diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/_meta.json b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/_meta.json
index ae40f7902488..8222113d613c 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/_meta.json
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/_meta.json
@@ -1,11 +1,11 @@
{
- "commit": "a4d405de616be574891325c48a08298f60e6692b",
+ "commit": "b174511dc82abae423efd1f14eaad9e1c78090f5",
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
- "autorest": "3.9.7",
+ "autorest": "3.10.2",
"use": [
- "@autorest/python@6.7.1",
- "@autorest/modelerfour@4.26.2"
+ "@autorest/python@6.27.4",
+ "@autorest/modelerfour@4.27.0"
],
- "autorest_command": "autorest specification/recoveryservicessiterecovery/resource-manager/readme.md --generate-sample=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/home/vsts/work/1/azure-sdk-for-python/sdk --use=@autorest/python@6.7.1 --use=@autorest/modelerfour@4.26.2 --version=3.9.7 --version-tolerant=False",
+ "autorest_command": "autorest specification/recoveryservicessiterecovery/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-python/sdk --use=@autorest/python@6.27.4 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False",
"readme": "specification/recoveryservicessiterecovery/resource-manager/readme.md"
}
\ No newline at end of file
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/__init__.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/__init__.py
index bcb56f3427f4..ca8899fc2459 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/__init__.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/__init__.py
@@ -5,15 +5,21 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+# pylint: disable=wrong-import-position
-from ._site_recovery_management_client import SiteRecoveryManagementClient
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._patch import * # pylint: disable=unused-wildcard-import
+
+from ._site_recovery_management_client import SiteRecoveryManagementClient # type: ignore
from ._version import VERSION
__version__ = VERSION
try:
from ._patch import __all__ as _patch_all
- from ._patch import * # pylint: disable=unused-wildcard-import
+ from ._patch import *
except ImportError:
_patch_all = []
from ._patch import patch_sdk as _patch_sdk
@@ -21,6 +27,6 @@
__all__ = [
"SiteRecoveryManagementClient",
]
-__all__.extend([p for p in _patch_all if p not in __all__])
+__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_configuration.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_configuration.py
index f42709d32fc8..af9d7dc8c6e7 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_configuration.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_configuration.py
@@ -8,18 +8,16 @@
from typing import Any, TYPE_CHECKING
-from azure.core.configuration import Configuration
from azure.core.pipeline import policies
from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy
from ._version import VERSION
if TYPE_CHECKING:
- # pylint: disable=unused-import,ungrouped-imports
from azure.core.credentials import TokenCredential
-class SiteRecoveryManagementClientConfiguration(Configuration): # pylint: disable=too-many-instance-attributes
+class SiteRecoveryManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long
"""Configuration for SiteRecoveryManagementClient.
Note that all parameters used to create this instance are saved as instance
@@ -34,7 +32,7 @@ class SiteRecoveryManagementClientConfiguration(Configuration): # pylint: disab
:type resource_group_name: str
:param resource_name: The name of the recovery services vault. Required.
:type resource_name: str
- :keyword api_version: Api Version. Default value is "2023-08-01". Note that overriding this
+ :keyword api_version: Api Version. Default value is "2025-01-01". Note that overriding this
default value may result in unsupported behavior.
:paramtype api_version: str
"""
@@ -47,8 +45,7 @@ def __init__(
resource_name: str,
**kwargs: Any
) -> None:
- super(SiteRecoveryManagementClientConfiguration, self).__init__(**kwargs)
- api_version: str = kwargs.pop("api_version", "2023-08-01")
+ api_version: str = kwargs.pop("api_version", "2025-01-01")
if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
@@ -66,6 +63,7 @@ def __init__(
self.api_version = api_version
self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"])
kwargs.setdefault("sdk_moniker", "mgmt-recoveryservicessiterecovery/{}".format(VERSION))
+ self.polling_interval = kwargs.get("polling_interval", 30)
self._configure(**kwargs)
def _configure(self, **kwargs: Any) -> None:
@@ -74,9 +72,9 @@ def _configure(self, **kwargs: Any) -> None:
self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs)
self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs)
self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs)
- self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs)
self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs)
+ self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs)
self.authentication_policy = kwargs.get("authentication_policy")
if self.credential and not self.authentication_policy:
self.authentication_policy = ARMChallengeAuthenticationPolicy(
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_serialization.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_serialization.py
index 4bae2292227b..b24ab2885450 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_serialization.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_serialization.py
@@ -1,3 +1,4 @@
+# pylint: disable=too-many-lines
# --------------------------------------------------------------------------
#
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -24,7 +25,6 @@
#
# --------------------------------------------------------------------------
-# pylint: skip-file
# pyright: reportUnnecessaryTypeIgnoreComment=false
from base64 import b64decode, b64encode
@@ -52,7 +52,6 @@
MutableMapping,
Type,
List,
- Mapping,
)
try:
@@ -63,8 +62,8 @@
import isodate # type: ignore
-from azure.core.exceptions import DeserializationError, SerializationError, raise_with_traceback
-from azure.core.serialization import NULL as AzureCoreNull
+from azure.core.exceptions import DeserializationError, SerializationError
+from azure.core.serialization import NULL as CoreNull
_BOM = codecs.BOM_UTF8.decode(encoding="utf-8")
@@ -91,6 +90,8 @@ def deserialize_from_text(cls, data: Optional[Union[AnyStr, IO]], content_type:
:param data: Input, could be bytes or stream (will be decoded with UTF8) or text
:type data: str or bytes or IO
:param str content_type: The content type.
+ :return: The deserialized data.
+ :rtype: object
"""
if hasattr(data, "read"):
# Assume a stream
@@ -112,7 +113,7 @@ def deserialize_from_text(cls, data: Optional[Union[AnyStr, IO]], content_type:
try:
return json.loads(data_as_str)
except ValueError as err:
- raise DeserializationError("JSON is invalid: {}".format(err), err)
+ raise DeserializationError("JSON is invalid: {}".format(err), err) from err
elif "xml" in (content_type or []):
try:
@@ -124,7 +125,7 @@ def deserialize_from_text(cls, data: Optional[Union[AnyStr, IO]], content_type:
pass
return ET.fromstring(data_as_str) # nosec
- except ET.ParseError:
+ except ET.ParseError as err:
# It might be because the server has an issue, and returned JSON with
# content-type XML....
# So let's try a JSON load, and if it's still broken
@@ -143,7 +144,9 @@ def _json_attemp(data):
# The function hack is because Py2.7 messes up with exception
# context otherwise.
_LOGGER.critical("Wasn't XML not JSON, failing")
- raise_with_traceback(DeserializationError, "XML is invalid")
+ raise DeserializationError("XML is invalid") from err
+ elif content_type.startswith("text/"):
+ return data_as_str
raise DeserializationError("Cannot deserialize content-type: {}".format(content_type))
@classmethod
@@ -153,6 +156,11 @@ def deserialize_from_http_generics(cls, body_bytes: Optional[Union[AnyStr, IO]],
Use bytes and headers to NOT use any requests/aiohttp or whatever
specific implementation.
Headers will tested for "content-type"
+
+ :param bytes body_bytes: The body of the response.
+ :param dict headers: The headers of the response.
+ :returns: The deserialized data.
+ :rtype: object
"""
# Try to use content-type from headers if available
content_type = None
@@ -170,13 +178,6 @@ def deserialize_from_http_generics(cls, body_bytes: Optional[Union[AnyStr, IO]],
return None
-try:
- basestring # type: ignore
- unicode_str = unicode # type: ignore
-except NameError:
- basestring = str
- unicode_str = str
-
_LOGGER = logging.getLogger(__name__)
try:
@@ -189,15 +190,30 @@ class UTC(datetime.tzinfo):
"""Time Zone info for handling UTC"""
def utcoffset(self, dt):
- """UTF offset for UTC is 0."""
+ """UTF offset for UTC is 0.
+
+ :param datetime.datetime dt: The datetime
+ :returns: The offset
+ :rtype: datetime.timedelta
+ """
return datetime.timedelta(0)
def tzname(self, dt):
- """Timestamp representation."""
+ """Timestamp representation.
+
+ :param datetime.datetime dt: The datetime
+ :returns: The timestamp representation
+ :rtype: str
+ """
return "Z"
def dst(self, dt):
- """No daylight saving for UTC."""
+ """No daylight saving for UTC.
+
+ :param datetime.datetime dt: The datetime
+ :returns: The daylight saving time
+ :rtype: datetime.timedelta
+ """
return datetime.timedelta(hours=1)
@@ -211,7 +227,7 @@ class _FixedOffset(datetime.tzinfo): # type: ignore
:param datetime.timedelta offset: offset in timedelta format
"""
- def __init__(self, offset):
+ def __init__(self, offset) -> None:
self.__offset = offset
def utcoffset(self, dt):
@@ -240,24 +256,26 @@ def __getinitargs__(self):
_FLATTEN = re.compile(r"(? None:
- self.additional_properties: Dict[str, Any] = {}
- for k in kwargs:
+ 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__)
elif k in self._validation and self._validation[k].get("readonly", False):
@@ -305,13 +330,23 @@ def __init__(self, **kwargs: Any) -> None:
setattr(self, k, kwargs[k])
def __eq__(self, other: Any) -> bool:
- """Compare objects by comparing all attributes."""
+ """Compare objects by comparing all attributes.
+
+ :param object other: The object to compare
+ :returns: True if objects are equal
+ :rtype: bool
+ """
if isinstance(other, self.__class__):
return self.__dict__ == other.__dict__
return False
def __ne__(self, other: Any) -> bool:
- """Compare objects by comparing all attributes."""
+ """Compare objects by comparing all attributes.
+
+ :param object other: The object to compare
+ :returns: True if objects are not equal
+ :rtype: bool
+ """
return not self.__eq__(other)
def __str__(self) -> str:
@@ -331,7 +366,11 @@ def is_xml_model(cls) -> bool:
@classmethod
def _create_xml_node(cls):
- """Create XML node."""
+ """Create XML node.
+
+ :returns: The XML node
+ :rtype: xml.etree.ElementTree.Element
+ """
try:
xml_map = cls._xml_map # type: ignore
except AttributeError:
@@ -340,7 +379,7 @@ def _create_xml_node(cls):
return _create_xml_node(xml_map.get("name", cls.__name__), xml_map.get("prefix", None), xml_map.get("ns", None))
def serialize(self, keep_readonly: bool = False, **kwargs: Any) -> JSON:
- """Return the JSON that would be sent to azure from this model.
+ """Return the JSON that would be sent to server from this model.
This is an alias to `as_dict(full_restapi_key_transformer, keep_readonly=False)`.
@@ -351,7 +390,9 @@ def serialize(self, keep_readonly: bool = False, **kwargs: Any) -> JSON:
:rtype: dict
"""
serializer = Serializer(self._infer_class_models())
- return serializer._serialize(self, keep_readonly=keep_readonly, **kwargs)
+ return serializer._serialize( # type: ignore # pylint: disable=protected-access
+ self, keep_readonly=keep_readonly, **kwargs
+ )
def as_dict(
self,
@@ -385,12 +426,15 @@ def my_key_transformer(key, attr_desc, value):
If you want XML serialization, you can pass the kwargs is_xml=True.
+ :param bool keep_readonly: If you want to serialize the readonly attributes
:param function key_transformer: A key transformer function.
:returns: A dict JSON compatible object
:rtype: dict
"""
serializer = Serializer(self._infer_class_models())
- return serializer._serialize(self, key_transformer=key_transformer, keep_readonly=keep_readonly, **kwargs)
+ return serializer._serialize( # type: ignore # pylint: disable=protected-access
+ self, key_transformer=key_transformer, keep_readonly=keep_readonly, **kwargs
+ )
@classmethod
def _infer_class_models(cls):
@@ -400,7 +444,7 @@ def _infer_class_models(cls):
client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)}
if cls.__name__ not in client_models:
raise ValueError("Not Autorest generated code")
- except Exception:
+ except Exception: # pylint: disable=broad-exception-caught
# Assume it's not Autorest generated (tests?). Add ourselves as dependencies.
client_models = {cls.__name__: cls}
return client_models
@@ -413,9 +457,10 @@ def deserialize(cls: Type[ModelType], data: Any, content_type: Optional[str] = N
:param str content_type: JSON by default, set application/xml if XML.
:returns: An instance of this model
:raises: DeserializationError if something went wrong
+ :rtype: ModelType
"""
deserializer = Deserializer(cls._infer_class_models())
- return deserializer(cls.__name__, data, content_type=content_type)
+ return deserializer(cls.__name__, data, content_type=content_type) # type: ignore
@classmethod
def from_dict(
@@ -431,9 +476,11 @@ def from_dict(
and last_rest_key_case_insensitive_extractor)
:param dict data: A dict using RestAPI structure
+ :param function key_extractors: A key extractor function.
:param str content_type: JSON by default, set application/xml if XML.
:returns: An instance of this model
:raises: DeserializationError if something went wrong
+ :rtype: ModelType
"""
deserializer = Deserializer(cls._infer_class_models())
deserializer.key_extractors = ( # type: ignore
@@ -445,7 +492,7 @@ def from_dict(
if key_extractors is None
else key_extractors
)
- return deserializer(cls.__name__, data, content_type=content_type)
+ return deserializer(cls.__name__, data, content_type=content_type) # type: ignore
@classmethod
def _flatten_subtype(cls, key, objects):
@@ -453,21 +500,25 @@ 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))
+ result.update(objects[valuetype]._flatten_subtype(key, objects)) # pylint: disable=protected-access
return result
@classmethod
def _classify(cls, response, objects):
"""Check the class _subtype_map for any child classes.
We want to ignore any inherited _subtype_maps.
- Remove the polymorphic key from the initial data.
+
+ :param dict response: The initial data
+ :param dict objects: The class objects
+ :returns: The class to be used
+ :rtype: class
"""
for subtype_key in cls.__dict__.get("_subtype_map", {}).keys():
subtype_value = None
if not isinstance(response, ET.Element):
rest_api_response_key = cls._get_rest_key_parts(subtype_key)[-1]
- subtype_value = response.pop(rest_api_response_key, None) or response.pop(subtype_key, None)
+ subtype_value = response.get(rest_api_response_key, None) or response.get(subtype_key, None)
else:
subtype_value = xml_key_extractor(subtype_key, cls._attribute_map[subtype_key], response)
if subtype_value:
@@ -506,11 +557,13 @@ def _decode_attribute_map_key(key):
inside the received data.
:param str key: A key string from the generated code
+ :returns: The decoded key
+ :rtype: str
"""
return key.replace("\\.", ".")
-class Serializer(object):
+class Serializer: # pylint: disable=too-many-public-methods
"""Request object model serializer."""
basic_types = {str: "str", int: "int", bool: "bool", float: "float"}
@@ -545,7 +598,7 @@ class Serializer(object):
"multiple": lambda x, y: x % y != 0,
}
- def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None):
+ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None:
self.serialize_type = {
"iso-8601": Serializer.serialize_iso,
"rfc-1123": Serializer.serialize_rfc,
@@ -561,17 +614,20 @@ def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None):
"[]": self.serialize_iter,
"{}": self.serialize_dict,
}
- self.dependencies: Dict[str, Type[ModelType]] = 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
- def _serialize(self, target_obj, data_type=None, **kwargs):
+ def _serialize( # pylint: disable=too-many-nested-blocks, too-many-branches, too-many-statements, too-many-locals
+ self, target_obj, data_type=None, **kwargs
+ ):
"""Serialize data into a string according to type.
- :param target_obj: The data to be serialized.
+ :param object target_obj: The data to be serialized.
:param str data_type: The type to be serialized from.
:rtype: str, dict
:raises: SerializationError if serialization fails.
+ :returns: The serialized data.
"""
key_transformer = kwargs.get("key_transformer", self.key_transformer)
keep_readonly = kwargs.get("keep_readonly", False)
@@ -597,12 +653,14 @@ def _serialize(self, target_obj, data_type=None, **kwargs):
serialized = {}
if is_xml_model_serialization:
- serialized = target_obj._create_xml_node()
+ serialized = target_obj._create_xml_node() # pylint: disable=protected-access
try:
- attributes = target_obj._attribute_map
+ attributes = target_obj._attribute_map # pylint: disable=protected-access
for attr, attr_desc in attributes.items():
attr_name = attr
- if not keep_readonly and target_obj._validation.get(attr_name, {}).get("readonly", False):
+ if not keep_readonly and target_obj._validation.get( # pylint: disable=protected-access
+ attr_name, {}
+ ).get("readonly", False):
continue
if attr_name == "additional_properties" and attr_desc["key"] == "":
@@ -638,7 +696,8 @@ def _serialize(self, target_obj, data_type=None, **kwargs):
if isinstance(new_attr, list):
serialized.extend(new_attr) # type: ignore
elif isinstance(new_attr, ET.Element):
- # If the down XML has no XML/Name, we MUST replace the tag with the local tag. But keeping the namespaces.
+ # If the down XML has no XML/Name,
+ # we MUST replace the tag with the local tag. But keeping the namespaces.
if "name" not in getattr(orig_attr, "_xml_map", {}):
splitted_tag = new_attr.tag.split("}")
if len(splitted_tag) == 2: # Namespace
@@ -649,7 +708,7 @@ def _serialize(self, target_obj, data_type=None, **kwargs):
else: # That's a basic type
# Integrate namespace if necessary
local_node = _create_xml_node(xml_name, xml_prefix, xml_ns)
- local_node.text = unicode_str(new_attr)
+ local_node.text = str(new_attr)
serialized.append(local_node) # type: ignore
else: # JSON
for k in reversed(keys): # type: ignore
@@ -668,18 +727,18 @@ def _serialize(self, target_obj, data_type=None, **kwargs):
except (AttributeError, KeyError, TypeError) as err:
msg = "Attribute {} in object {} cannot be serialized.\n{}".format(attr_name, class_name, str(target_obj))
- raise_with_traceback(SerializationError, msg, err)
- else:
- return serialized
+ raise SerializationError(msg) from err
+ return serialized
def body(self, data, data_type, **kwargs):
"""Serialize data intended for a request body.
- :param data: The data to be serialized.
+ :param object data: The data to be serialized.
:param str data_type: The type to be serialized from.
:rtype: dict
:raises: SerializationError if serialization fails.
:raises: ValueError if data is None
+ :returns: The serialized request body
"""
# Just in case this is a dict
@@ -708,18 +767,20 @@ def body(self, data, data_type, **kwargs):
attribute_key_case_insensitive_extractor,
last_rest_key_case_insensitive_extractor,
]
- data = deserializer._deserialize(data_type, data)
+ data = deserializer._deserialize(data_type, data) # pylint: disable=protected-access
except DeserializationError as err:
- raise_with_traceback(SerializationError, "Unable to build a model: " + str(err), err)
+ raise SerializationError("Unable to build a model: " + str(err)) from err
return self._serialize(data, data_type, **kwargs)
def url(self, name, data, data_type, **kwargs):
"""Serialize data intended for a URL path.
- :param data: The data to be serialized.
+ :param str name: The name of the URL path parameter.
+ :param object data: The data to be serialized.
:param str data_type: The type to be serialized from.
:rtype: str
+ :returns: The serialized URL path
:raises: TypeError if serialization fails.
:raises: ValueError if data is None
"""
@@ -730,30 +791,30 @@ def url(self, name, data, data_type, **kwargs):
if kwargs.get("skip_quote") is True:
output = str(output)
+ output = output.replace("{", quote("{")).replace("}", quote("}"))
else:
output = quote(str(output), safe="")
- except SerializationError:
- raise TypeError("{} must be type {}.".format(name, data_type))
- else:
- return output
+ except SerializationError as exc:
+ raise TypeError("{} must be type {}.".format(name, data_type)) from exc
+ return output
def query(self, name, data, data_type, **kwargs):
"""Serialize data intended for a URL query.
- :param data: The data to be serialized.
+ :param str name: The name of the query parameter.
+ :param object data: The data to be serialized.
:param str data_type: The type to be serialized from.
- :keyword bool skip_quote: Whether to skip quote the serialized result.
- Defaults to False.
- :rtype: str
+ :rtype: str, list
:raises: TypeError if serialization fails.
:raises: ValueError if data is None
+ :returns: The serialized query parameter
"""
try:
# Treat the list aside, since we don't want to encode the div separator
if data_type.startswith("["):
internal_data_type = data_type[1:-1]
do_quote = not kwargs.get("skip_quote", False)
- return str(self.serialize_iter(data, internal_data_type, do_quote=do_quote, **kwargs))
+ return self.serialize_iter(data, internal_data_type, do_quote=do_quote, **kwargs)
# Not a list, regular serialization
output = self.serialize_data(data, data_type, **kwargs)
@@ -763,19 +824,20 @@ def query(self, name, data, data_type, **kwargs):
output = str(output)
else:
output = quote(str(output), safe="")
- except SerializationError:
- raise TypeError("{} must be type {}.".format(name, data_type))
- else:
- return str(output)
+ except SerializationError as exc:
+ raise TypeError("{} must be type {}.".format(name, data_type)) from exc
+ return str(output)
def header(self, name, data, data_type, **kwargs):
"""Serialize data intended for a request header.
- :param data: The data to be serialized.
+ :param str name: The name of the header.
+ :param object data: The data to be serialized.
:param str data_type: The type to be serialized from.
:rtype: str
:raises: TypeError if serialization fails.
:raises: ValueError if data is None
+ :returns: The serialized header
"""
try:
if data_type in ["[str]"]:
@@ -784,32 +846,31 @@ def header(self, name, data, data_type, **kwargs):
output = self.serialize_data(data, data_type, **kwargs)
if data_type == "bool":
output = json.dumps(output)
- except SerializationError:
- raise TypeError("{} must be type {}.".format(name, data_type))
- else:
- return str(output)
+ except SerializationError as exc:
+ raise TypeError("{} must be type {}.".format(name, data_type)) from exc
+ return str(output)
def serialize_data(self, data, data_type, **kwargs):
"""Serialize generic data according to supplied data type.
- :param data: The data to be serialized.
+ :param object data: The data to be serialized.
:param str data_type: The type to be serialized from.
- :param bool required: Whether it's essential that the data not be
- empty or None
:raises: AttributeError if required data is None.
:raises: ValueError if data is None
:raises: SerializationError if serialization fails.
+ :returns: The serialized data.
+ :rtype: str, int, float, bool, dict, list
"""
if data is None:
raise ValueError("No value for given attribute")
try:
- if data is AzureCoreNull:
+ if data is CoreNull:
return None
if data_type in self.basic_types.values():
return self.serialize_basic(data, data_type, **kwargs)
- elif data_type in self.serialize_type:
+ if data_type in self.serialize_type:
return self.serialize_type[data_type](data, **kwargs)
# If dependencies is empty, try with current data class
@@ -824,12 +885,11 @@ def serialize_data(self, data, data_type, **kwargs):
except (ValueError, TypeError) as err:
msg = "Unable to serialize value: {!r} as type: {!r}."
- raise_with_traceback(SerializationError, msg.format(data, data_type), err)
- else:
- return self._serialize(data, **kwargs)
+ raise SerializationError(msg.format(data, data_type)) from err
+ return self._serialize(data, **kwargs)
@classmethod
- def _get_custom_serializers(cls, data_type, **kwargs):
+ def _get_custom_serializers(cls, data_type, **kwargs): # pylint: disable=inconsistent-return-statements
custom_serializer = kwargs.get("basic_types_serializers", {}).get(data_type)
if custom_serializer:
return custom_serializer
@@ -845,23 +905,26 @@ def serialize_basic(cls, data, data_type, **kwargs):
- basic_types_serializers dict[str, callable] : If set, use the callable as serializer
- is_xml bool : If set, use xml_basic_types_serializers
- :param data: Object to be serialized.
+ :param obj data: Object to be serialized.
:param str data_type: Type of object in the iterable.
+ :rtype: str, int, float, bool
+ :return: serialized object
"""
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
+ return eval(data_type)(data) # nosec # pylint: disable=eval-used
@classmethod
def serialize_unicode(cls, data):
"""Special handling for serializing unicode strings in Py2.
Encode to UTF-8 if unicode, otherwise handle as a str.
- :param data: Object to be serialized.
+ :param str data: Object to be serialized.
:rtype: str
+ :return: serialized object
"""
try: # If I received an enum, return its value
return data.value
@@ -875,8 +938,7 @@ def serialize_unicode(cls, data):
return data
except NameError:
return str(data)
- else:
- return str(data)
+ return str(data)
def serialize_iter(self, data, iter_type, div=None, **kwargs):
"""Serialize iterable.
@@ -886,15 +948,13 @@ def serialize_iter(self, data, iter_type, div=None, **kwargs):
serialization_ctxt['type'] should be same as data_type.
- is_xml bool : If set, serialize as XML
- :param list attr: Object to be serialized.
+ :param list data: Object to be serialized.
:param str iter_type: Type of object in the iterable.
- :param bool required: Whether the objects in the iterable must
- not be None or empty.
:param str div: If set, this str will be used to combine the elements
in the iterable into a combined string. Default is 'None'.
- :keyword bool do_quote: Whether to quote the serialized result of each iterable element.
Defaults to False.
:rtype: list, str
+ :return: serialized iterable
"""
if isinstance(data, str):
raise SerializationError("Refuse str type as a valid iter type.")
@@ -949,9 +1009,8 @@ def serialize_dict(self, attr, dict_type, **kwargs):
:param dict attr: Object to be serialized.
:param str dict_type: Type of object in the dictionary.
- :param bool required: Whether the objects in the dictionary must
- not be None or empty.
:rtype: dict
+ :return: serialized dictionary
"""
serialization_ctxt = kwargs.get("serialization_ctxt", {})
serialized = {}
@@ -975,7 +1034,7 @@ def serialize_dict(self, attr, dict_type, **kwargs):
return serialized
- def serialize_object(self, attr, **kwargs):
+ def serialize_object(self, attr, **kwargs): # pylint: disable=too-many-return-statements
"""Serialize a generic object.
This will be handled as a dictionary. If object passed in is not
a basic type (str, int, float, dict, list) it will simply be
@@ -983,6 +1042,7 @@ def serialize_object(self, attr, **kwargs):
:param dict attr: Object to be serialized.
:rtype: dict or str
+ :return: serialized object
"""
if attr is None:
return None
@@ -993,7 +1053,7 @@ def serialize_object(self, attr, **kwargs):
return self.serialize_basic(attr, self.basic_types[obj_type], **kwargs)
if obj_type is _long_type:
return self.serialize_long(attr)
- if obj_type is unicode_str:
+ if obj_type is str:
return self.serialize_unicode(attr)
if obj_type is datetime.datetime:
return self.serialize_iso(attr)
@@ -1007,7 +1067,7 @@ def serialize_object(self, attr, **kwargs):
return self.serialize_decimal(attr)
# If it's a model or I know this dependency, serialize as a Model
- elif obj_type in self.dependencies.values() or isinstance(attr, Model):
+ if obj_type in self.dependencies.values() or isinstance(attr, Model):
return self._serialize(attr)
if obj_type == dict:
@@ -1038,56 +1098,61 @@ def serialize_enum(attr, enum_obj=None):
try:
enum_obj(result) # type: ignore
return result
- except ValueError:
+ except ValueError as exc:
for enum_value in enum_obj: # type: ignore
if enum_value.value.lower() == str(attr).lower():
return enum_value.value
error = "{!r} is not valid value for enum {!r}"
- raise SerializationError(error.format(attr, enum_obj))
+ raise SerializationError(error.format(attr, enum_obj)) from exc
@staticmethod
- def serialize_bytearray(attr, **kwargs):
+ def serialize_bytearray(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize bytearray into base-64 string.
- :param attr: Object to be serialized.
+ :param str attr: Object to be serialized.
:rtype: str
+ :return: serialized base64
"""
return b64encode(attr).decode()
@staticmethod
- def serialize_base64(attr, **kwargs):
+ def serialize_base64(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize str into base-64 string.
- :param attr: Object to be serialized.
+ :param str attr: Object to be serialized.
:rtype: str
+ :return: serialized base64
"""
encoded = b64encode(attr).decode("ascii")
return encoded.strip("=").replace("+", "-").replace("/", "_")
@staticmethod
- def serialize_decimal(attr, **kwargs):
+ def serialize_decimal(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Decimal object to float.
- :param attr: Object to be serialized.
+ :param decimal attr: Object to be serialized.
:rtype: float
+ :return: serialized decimal
"""
return float(attr)
@staticmethod
- def serialize_long(attr, **kwargs):
+ def serialize_long(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize long (Py2) or int (Py3).
- :param attr: Object to be serialized.
+ :param int attr: Object to be serialized.
:rtype: int/long
+ :return: serialized long
"""
return _long_type(attr)
@staticmethod
- def serialize_date(attr, **kwargs):
+ def serialize_date(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Date object into ISO-8601 formatted string.
:param Date attr: Object to be serialized.
:rtype: str
+ :return: serialized date
"""
if isinstance(attr, str):
attr = isodate.parse_date(attr)
@@ -1095,11 +1160,12 @@ def serialize_date(attr, **kwargs):
return t
@staticmethod
- def serialize_time(attr, **kwargs):
+ def serialize_time(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Time object into ISO-8601 formatted string.
:param datetime.time attr: Object to be serialized.
:rtype: str
+ :return: serialized time
"""
if isinstance(attr, str):
attr = isodate.parse_time(attr)
@@ -1109,30 +1175,32 @@ def serialize_time(attr, **kwargs):
return t
@staticmethod
- def serialize_duration(attr, **kwargs):
+ def serialize_duration(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize TimeDelta object into ISO-8601 formatted string.
:param TimeDelta attr: Object to be serialized.
:rtype: str
+ :return: serialized duration
"""
if isinstance(attr, str):
attr = isodate.parse_duration(attr)
return isodate.duration_isoformat(attr)
@staticmethod
- def serialize_rfc(attr, **kwargs):
+ def serialize_rfc(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Datetime object into RFC-1123 formatted string.
:param Datetime attr: Object to be serialized.
:rtype: str
:raises: TypeError if format invalid.
+ :return: serialized rfc
"""
try:
if not attr.tzinfo:
_LOGGER.warning("Datetime with no tzinfo will be considered UTC.")
utc = attr.utctimetuple()
- except AttributeError:
- raise TypeError("RFC1123 object must be valid Datetime object.")
+ except AttributeError as exc:
+ raise TypeError("RFC1123 object must be valid Datetime object.") from exc
return "{}, {:02} {} {:04} {:02}:{:02}:{:02} GMT".format(
Serializer.days[utc.tm_wday],
@@ -1145,12 +1213,13 @@ def serialize_rfc(attr, **kwargs):
)
@staticmethod
- def serialize_iso(attr, **kwargs):
+ def serialize_iso(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Datetime object into ISO-8601 formatted string.
:param Datetime attr: Object to be serialized.
:rtype: str
:raises: SerializationError if format invalid.
+ :return: serialized iso
"""
if isinstance(attr, str):
attr = isodate.parse_datetime(attr)
@@ -1170,19 +1239,20 @@ def serialize_iso(attr, **kwargs):
return date + microseconds + "Z"
except (ValueError, OverflowError) as err:
msg = "Unable to serialize datetime object."
- raise_with_traceback(SerializationError, msg, err)
+ raise SerializationError(msg) from err
except AttributeError as err:
msg = "ISO-8601 object must be valid Datetime object."
- raise_with_traceback(TypeError, msg, err)
+ raise TypeError(msg) from err
@staticmethod
- def serialize_unix(attr, **kwargs):
+ def serialize_unix(attr, **kwargs): # pylint: disable=unused-argument
"""Serialize Datetime object into IntTime format.
This is represented as seconds.
:param Datetime attr: Object to be serialized.
:rtype: int
:raises: SerializationError if format invalid
+ :return: serialied unix
"""
if isinstance(attr, int):
return attr
@@ -1190,11 +1260,11 @@ def serialize_unix(attr, **kwargs):
if not attr.tzinfo:
_LOGGER.warning("Datetime with no tzinfo will be considered UTC.")
return int(calendar.timegm(attr.utctimetuple()))
- except AttributeError:
- raise TypeError("Unix time object must be valid Datetime object.")
+ except AttributeError as exc:
+ raise TypeError("Unix time object must be valid Datetime object.") from exc
-def rest_key_extractor(attr, attr_desc, data):
+def rest_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argument
key = attr_desc["key"]
working_data = data
@@ -1209,14 +1279,15 @@ def rest_key_extractor(attr, attr_desc, data):
if working_data is None:
# If at any point while following flatten JSON path see None, it means
# that all properties under are None as well
- # https://github.com/Azure/msrest-for-python/issues/197
return None
key = ".".join(dict_keys[1:])
return working_data.get(key)
-def rest_key_case_insensitive_extractor(attr, attr_desc, data):
+def rest_key_case_insensitive_extractor( # pylint: disable=unused-argument, inconsistent-return-statements
+ attr, attr_desc, data
+):
key = attr_desc["key"]
working_data = data
@@ -1230,7 +1301,6 @@ def rest_key_case_insensitive_extractor(attr, attr_desc, data):
if working_data is None:
# If at any point while following flatten JSON path see None, it means
# that all properties under are None as well
- # https://github.com/Azure/msrest-for-python/issues/197
return None
key = ".".join(dict_keys[1:])
@@ -1238,17 +1308,29 @@ def rest_key_case_insensitive_extractor(attr, attr_desc, data):
return attribute_key_case_insensitive_extractor(key, None, working_data)
-def last_rest_key_extractor(attr, attr_desc, data):
- """Extract the attribute in "data" based on the last part of the JSON path key."""
+def last_rest_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argument
+ """Extract the attribute in "data" based on the last part of the JSON path key.
+
+ :param str attr: The attribute to extract
+ :param dict attr_desc: The attribute description
+ :param dict data: The data to extract from
+ :rtype: object
+ :returns: The extracted attribute
+ """
key = attr_desc["key"]
dict_keys = _FLATTEN.split(key)
return attribute_key_extractor(dict_keys[-1], None, data)
-def last_rest_key_case_insensitive_extractor(attr, attr_desc, data):
+def last_rest_key_case_insensitive_extractor(attr, attr_desc, data): # pylint: disable=unused-argument
"""Extract the attribute in "data" based on the last part of the JSON path key.
This is the case insensitive version of "last_rest_key_extractor"
+ :param str attr: The attribute to extract
+ :param dict attr_desc: The attribute description
+ :param dict data: The data to extract from
+ :rtype: object
+ :returns: The extracted attribute
"""
key = attr_desc["key"]
dict_keys = _FLATTEN.split(key)
@@ -1285,7 +1367,7 @@ def _extract_name_from_internal_type(internal_type):
return xml_name
-def xml_key_extractor(attr, attr_desc, data):
+def xml_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argument,too-many-return-statements
if isinstance(data, dict):
return None
@@ -1337,22 +1419,21 @@ def xml_key_extractor(attr, attr_desc, data):
if is_iter_type:
if is_wrapped:
return None # is_wrapped no node, we want None
- else:
- return [] # not wrapped, assume empty list
+ return [] # not wrapped, assume empty list
return None # Assume it's not there, maybe an optional node.
# If is_iter_type and not wrapped, return all found children
if is_iter_type:
if not is_wrapped:
return children
- else: # Iter and wrapped, should have found one node only (the wrap one)
- if len(children) != 1:
- raise DeserializationError(
- "Tried to deserialize an array not wrapped, and found several nodes '{}'. Maybe you should declare this array as wrapped?".format(
- xml_name
- )
+ # Iter and wrapped, should have found one node only (the wrap one)
+ if len(children) != 1:
+ raise DeserializationError(
+ "Tried to deserialize an array not wrapped, and found several nodes '{}'. Maybe you should declare this array as wrapped?".format( # pylint: disable=line-too-long
+ xml_name
)
- return list(children[0]) # Might be empty list and that's ok.
+ )
+ return list(children[0]) # Might be empty list and that's ok.
# Here it's not a itertype, we should have found one element only or empty
if len(children) > 1:
@@ -1360,7 +1441,7 @@ def xml_key_extractor(attr, attr_desc, data):
return children[0]
-class Deserializer(object):
+class Deserializer:
"""Response object model deserializer.
:param dict classes: Class type dictionary for deserializing complex types.
@@ -1369,9 +1450,9 @@ class Deserializer(object):
basic_types = {str: "str", int: "int", bool: "bool", float: "float"}
- valid_date = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}" r"\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?")
+ valid_date = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?")
- def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None):
+ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None:
self.deserialize_type = {
"iso-8601": Deserializer.deserialize_iso,
"rfc-1123": Deserializer.deserialize_rfc,
@@ -1391,7 +1472,7 @@ def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None):
"duration": (isodate.Duration, datetime.timedelta),
"iso-8601": (datetime.datetime),
}
- self.dependencies: Dict[str, Type[ModelType]] = 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
@@ -1409,11 +1490,12 @@ def __call__(self, target_obj, response_data, content_type=None):
:param str content_type: Swagger "produces" if available.
:raises: DeserializationError if deserialization fails.
:return: Deserialized object.
+ :rtype: object
"""
data = self._unpack_content(response_data, content_type)
return self._deserialize(target_obj, data)
- def _deserialize(self, target_obj, data):
+ def _deserialize(self, target_obj, data): # pylint: disable=inconsistent-return-statements
"""Call the deserializer on a model.
Data needs to be already deserialized as JSON or XML ElementTree
@@ -1422,12 +1504,13 @@ def _deserialize(self, target_obj, data):
:param object data: Object to deserialize.
:raises: DeserializationError if deserialization fails.
:return: Deserialized object.
+ :rtype: object
"""
# This is already a model, go recursive just in case
if hasattr(data, "_attribute_map"):
constants = [name for name, config in getattr(data, "_validation", {}).items() if config.get("constant")]
try:
- for attr, mapconfig in data._attribute_map.items():
+ for attr, mapconfig in data._attribute_map.items(): # pylint: disable=protected-access
if attr in constants:
continue
value = getattr(data, attr)
@@ -1444,15 +1527,15 @@ def _deserialize(self, target_obj, data):
response, class_name = self._classify_target(target_obj, data)
- if isinstance(response, basestring):
+ if isinstance(response, str):
return self.deserialize_data(data, response)
- elif isinstance(response, type) and issubclass(response, Enum):
+ if isinstance(response, type) and issubclass(response, Enum):
return self.deserialize_enum(data, response)
- if data is None:
+ if data is None or data is CoreNull:
return data
try:
- attributes = response._attribute_map # type: ignore
+ attributes = response._attribute_map # type: ignore # pylint: disable=protected-access
d_attrs = {}
for attr, attr_desc in attributes.items():
# Check empty string. If it's not empty, someone has a real "additionalProperties"...
@@ -1481,10 +1564,9 @@ def _deserialize(self, target_obj, data):
d_attrs[attr] = value
except (AttributeError, TypeError, KeyError) as err:
msg = "Unable to deserialize to object: " + class_name # type: ignore
- raise_with_traceback(DeserializationError, msg, err)
- else:
- additional_properties = self._build_additional_properties(attributes, data)
- return self._instantiate_model(response, d_attrs, additional_properties)
+ raise DeserializationError(msg) from err
+ additional_properties = self._build_additional_properties(attributes, data)
+ return self._instantiate_model(response, d_attrs, additional_properties)
def _build_additional_properties(self, attribute_map, data):
if not self.additional_properties_detection:
@@ -1511,18 +1593,20 @@ def _classify_target(self, target, data):
:param str target: The target object type to deserialize to.
:param str/dict data: The response data to deserialize.
+ :return: The classified target object and its class name.
+ :rtype: tuple
"""
if target is None:
return None, None
- if isinstance(target, basestring):
+ if isinstance(target, str):
try:
target = self.dependencies[target]
except KeyError:
return target, target
try:
- target = target._classify(data, self.dependencies)
+ target = target._classify(data, self.dependencies) # type: ignore # pylint: disable=protected-access
except AttributeError:
pass # Target is not a Model, no classify
return target, target.__class__.__name__ # type: ignore
@@ -1537,10 +1621,12 @@ def failsafe_deserialize(self, target_obj, data, content_type=None):
:param str target_obj: The target object type to deserialize to.
:param str/dict data: The response data to deserialize.
:param str content_type: Swagger "produces" if available.
+ :return: Deserialized object.
+ :rtype: object
"""
try:
return self(target_obj, data, content_type=content_type)
- except:
+ except: # pylint: disable=bare-except
_LOGGER.debug(
"Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True
)
@@ -1558,10 +1644,12 @@ def _unpack_content(raw_data, content_type=None):
If raw_data is something else, bypass all logic and return it directly.
- :param raw_data: Data to be processed.
- :param content_type: How to parse if raw_data is a string/bytes.
+ :param obj raw_data: Data to be processed.
+ :param str content_type: How to parse if raw_data is a string/bytes.
:raises JSONDecodeError: If JSON is requested and parsing is impossible.
:raises UnicodeDecodeError: If bytes is not UTF8
+ :rtype: object
+ :return: Unpacked content.
"""
# Assume this is enough to detect a Pipeline Response without importing it
context = getattr(raw_data, "context", {})
@@ -1578,31 +1666,42 @@ def _unpack_content(raw_data, content_type=None):
if hasattr(raw_data, "_content_consumed"):
return RawDeserializer.deserialize_from_http_generics(raw_data.text, raw_data.headers)
- if isinstance(raw_data, (basestring, bytes)) or hasattr(raw_data, "read"):
+ if isinstance(raw_data, (str, bytes)) or hasattr(raw_data, "read"):
return RawDeserializer.deserialize_from_text(raw_data, content_type) # type: ignore
return raw_data
def _instantiate_model(self, response, attrs, additional_properties=None):
"""Instantiate a response model passing in deserialized args.
- :param response: The response model class.
- :param d_attrs: The deserialized response attributes.
+ :param Response response: The response model class.
+ :param dict attrs: The deserialized response attributes.
+ :param dict additional_properties: Additional properties to be set.
+ :rtype: Response
+ :return: The instantiated response model.
"""
if callable(response):
subtype = getattr(response, "_subtype_map", {})
try:
- readonly = [k for k, v in response._validation.items() if v.get("readonly")]
- const = [k for k, v in response._validation.items() if v.get("constant")]
+ readonly = [
+ k
+ for k, v in response._validation.items() # pylint: disable=protected-access # type: ignore
+ if v.get("readonly")
+ ]
+ const = [
+ k
+ for k, v in response._validation.items() # pylint: disable=protected-access # type: ignore
+ if v.get("constant")
+ ]
kwargs = {k: v for k, v in attrs.items() if k not in subtype and k not in readonly + const}
response_obj = response(**kwargs)
for attr in readonly:
setattr(response_obj, attr, attrs.get(attr))
if additional_properties:
- response_obj.additional_properties = additional_properties
+ response_obj.additional_properties = additional_properties # type: ignore
return response_obj
except TypeError as err:
msg = "Unable to deserialize {} into model {}. ".format(kwargs, response) # type: ignore
- raise DeserializationError(msg + str(err))
+ raise DeserializationError(msg + str(err)) from err
else:
try:
for attr, value in attrs.items():
@@ -1611,15 +1710,16 @@ def _instantiate_model(self, response, attrs, additional_properties=None):
except Exception as exp:
msg = "Unable to populate response model. "
msg += "Type: {}, Error: {}".format(type(response), exp)
- raise DeserializationError(msg)
+ raise DeserializationError(msg) from exp
- def deserialize_data(self, data, data_type):
+ def deserialize_data(self, data, data_type): # pylint: disable=too-many-return-statements
"""Process data for deserialization according to data type.
:param str data: The response string to be deserialized.
:param str data_type: The type to deserialize to.
:raises: DeserializationError if deserialization fails.
:return: Deserialized object.
+ :rtype: object
"""
if data is None:
return data
@@ -1633,7 +1733,11 @@ def deserialize_data(self, data, data_type):
if isinstance(data, self.deserialize_expected_types.get(data_type, tuple())):
return data
- is_a_text_parsing_type = lambda x: x not in ["object", "[]", r"{}"]
+ is_a_text_parsing_type = lambda x: x not in [ # pylint: disable=unnecessary-lambda-assignment
+ "object",
+ "[]",
+ r"{}",
+ ]
if isinstance(data, ET.Element) and is_a_text_parsing_type(data_type) and not data.text:
return None
data_val = self.deserialize_type[data_type](data)
@@ -1652,15 +1756,15 @@ def deserialize_data(self, data, data_type):
except (ValueError, TypeError, AttributeError) as err:
msg = "Unable to deserialize response data."
msg += " Data: {}, {}".format(data, data_type)
- raise_with_traceback(DeserializationError, msg, err)
- else:
- return self._deserialize(obj_type, data)
+ raise DeserializationError(msg) from err
+ return self._deserialize(obj_type, data)
def deserialize_iter(self, attr, iter_type):
"""Deserialize an iterable.
:param list attr: Iterable to be deserialized.
:param str iter_type: The type of object in the iterable.
+ :return: Deserialized iterable.
:rtype: list
"""
if attr is None:
@@ -1677,6 +1781,7 @@ def deserialize_dict(self, attr, dict_type):
:param dict/list attr: Dictionary to be deserialized. Also accepts
a list of key, value pairs.
:param str dict_type: The object type of the items in the dictionary.
+ :return: Deserialized dictionary.
:rtype: dict
"""
if isinstance(attr, list):
@@ -1687,11 +1792,12 @@ def deserialize_dict(self, attr, dict_type):
attr = {el.tag: el.text for el in attr}
return {k: self.deserialize_data(v, dict_type) for k, v in attr.items()}
- def deserialize_object(self, attr, **kwargs):
+ def deserialize_object(self, attr, **kwargs): # pylint: disable=too-many-return-statements
"""Deserialize a generic object.
This will be handled as a dictionary.
:param dict attr: Dictionary to be deserialized.
+ :return: Deserialized object.
:rtype: dict
:raises: TypeError if non-builtin datatype encountered.
"""
@@ -1700,7 +1806,7 @@ def deserialize_object(self, attr, **kwargs):
if isinstance(attr, ET.Element):
# Do no recurse on XML, just return the tree as-is
return attr
- if isinstance(attr, basestring):
+ if isinstance(attr, str):
return self.deserialize_basic(attr, "str")
obj_type = type(attr)
if obj_type in self.basic_types:
@@ -1726,11 +1832,10 @@ def deserialize_object(self, attr, **kwargs):
pass
return deserialized
- else:
- error = "Cannot deserialize generic object with type: "
- raise TypeError(error + str(obj_type))
+ error = "Cannot deserialize generic object with type: "
+ raise TypeError(error + str(obj_type))
- def deserialize_basic(self, attr, data_type):
+ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return-statements
"""Deserialize basic builtin data type from string.
Will attempt to convert to str, int, float and bool.
This function will also accept '1', '0', 'true' and 'false' as
@@ -1738,6 +1843,7 @@ def deserialize_basic(self, attr, data_type):
:param str attr: response string to be deserialized.
: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.
"""
@@ -1749,24 +1855,23 @@ def deserialize_basic(self, attr, data_type):
if data_type == "str":
# None or '', node is empty string.
return ""
- else:
- # None or '', node with a strong type is None.
- # Don't try to model "empty bool" or "empty int"
- return None
+ # None or '', node with a strong type is None.
+ # Don't try to model "empty bool" or "empty int"
+ return None
if data_type == "bool":
if attr in [True, False, 1, 0]:
return bool(attr)
- elif isinstance(attr, basestring):
+ if isinstance(attr, str):
if attr.lower() in ["true", "1"]:
return True
- elif attr.lower() in ["false", "0"]:
+ if attr.lower() in ["false", "0"]:
return False
raise TypeError("Invalid boolean value: {}".format(attr))
if data_type == "str":
return self.deserialize_unicode(attr)
- return eval(data_type)(attr) # nosec
+ return eval(data_type)(attr) # nosec # pylint: disable=eval-used
@staticmethod
def deserialize_unicode(data):
@@ -1774,6 +1879,7 @@ def deserialize_unicode(data):
as a string.
:param str data: response string to be deserialized.
+ :return: Deserialized string.
:rtype: str or unicode
"""
# We might be here because we have an enum modeled as string,
@@ -1787,8 +1893,7 @@ def deserialize_unicode(data):
return data
except NameError:
return str(data)
- else:
- return str(data)
+ return str(data)
@staticmethod
def deserialize_enum(data, enum_obj):
@@ -1800,6 +1905,7 @@ def deserialize_enum(data, enum_obj):
:param str data: Response string to be deserialized. If this value is
None or invalid it will be returned as-is.
:param Enum enum_obj: Enum object to deserialize to.
+ :return: Deserialized enum object.
:rtype: Enum
"""
if isinstance(data, enum_obj) or data is None:
@@ -1808,12 +1914,11 @@ def deserialize_enum(data, enum_obj):
data = data.value
if isinstance(data, int):
# Workaround. We might consider remove it in the future.
- # https://github.com/Azure/azure-rest-api-specs/issues/141
try:
return list(enum_obj.__members__.values())[data]
- except IndexError:
+ except IndexError as exc:
error = "{!r} is not a valid index for enum {!r}"
- raise DeserializationError(error.format(data, enum_obj))
+ raise DeserializationError(error.format(data, enum_obj)) from exc
try:
return enum_obj(str(data))
except ValueError:
@@ -1829,6 +1934,7 @@ def deserialize_bytearray(attr):
"""Deserialize string into bytearray.
:param str attr: response string to be deserialized.
+ :return: Deserialized bytearray
:rtype: bytearray
:raises: TypeError if string format invalid.
"""
@@ -1841,6 +1947,7 @@ def deserialize_base64(attr):
"""Deserialize base64 encoded string into string.
:param str attr: response string to be deserialized.
+ :return: Deserialized base64 string
:rtype: bytearray
:raises: TypeError if string format invalid.
"""
@@ -1856,22 +1963,24 @@ def deserialize_decimal(attr):
"""Deserialize string into Decimal object.
:param str attr: response string to be deserialized.
- :rtype: Decimal
+ :return: Deserialized decimal
:raises: DeserializationError if string format invalid.
+ :rtype: decimal
"""
if isinstance(attr, ET.Element):
attr = attr.text
try:
- return decimal.Decimal(attr) # type: ignore
+ return decimal.Decimal(str(attr)) # type: ignore
except decimal.DecimalException as err:
msg = "Invalid decimal {}".format(attr)
- raise_with_traceback(DeserializationError, msg, err)
+ raise DeserializationError(msg) from err
@staticmethod
def deserialize_long(attr):
"""Deserialize string into long (Py2) or int (Py3).
:param str attr: response string to be deserialized.
+ :return: Deserialized int
:rtype: long or int
:raises: ValueError if string format invalid.
"""
@@ -1884,6 +1993,7 @@ def deserialize_duration(attr):
"""Deserialize ISO-8601 formatted string into TimeDelta object.
:param str attr: response string to be deserialized.
+ :return: Deserialized duration
:rtype: TimeDelta
:raises: DeserializationError if string format invalid.
"""
@@ -1893,15 +2003,15 @@ def deserialize_duration(attr):
duration = isodate.parse_duration(attr)
except (ValueError, OverflowError, AttributeError) as err:
msg = "Cannot deserialize duration object."
- raise_with_traceback(DeserializationError, msg, err)
- else:
- return duration
+ raise DeserializationError(msg) from err
+ return duration
@staticmethod
def deserialize_date(attr):
"""Deserialize ISO-8601 formatted string into Date object.
:param str attr: response string to be deserialized.
+ :return: Deserialized date
:rtype: Date
:raises: DeserializationError if string format invalid.
"""
@@ -1910,13 +2020,14 @@ def deserialize_date(attr):
if re.search(r"[^\W\d_]", attr, re.I + re.U): # type: ignore
raise DeserializationError("Date must have only digits and -. Received: %s" % attr)
# This must NOT use defaultmonth/defaultday. Using None ensure this raises an exception.
- return isodate.parse_date(attr, defaultmonth=None, defaultday=None)
+ return isodate.parse_date(attr, defaultmonth=0, defaultday=0)
@staticmethod
def deserialize_time(attr):
"""Deserialize ISO-8601 formatted string into time object.
:param str attr: response string to be deserialized.
+ :return: Deserialized time
:rtype: datetime.time
:raises: DeserializationError if string format invalid.
"""
@@ -1931,6 +2042,7 @@ def deserialize_rfc(attr):
"""Deserialize RFC-1123 formatted string into Datetime object.
:param str attr: response string to be deserialized.
+ :return: Deserialized RFC datetime
:rtype: Datetime
:raises: DeserializationError if string format invalid.
"""
@@ -1945,15 +2057,15 @@ def deserialize_rfc(attr):
date_obj = date_obj.astimezone(tz=TZ_UTC)
except ValueError as err:
msg = "Cannot deserialize to rfc datetime object."
- raise_with_traceback(DeserializationError, msg, err)
- else:
- return date_obj
+ raise DeserializationError(msg) from err
+ return date_obj
@staticmethod
def deserialize_iso(attr):
"""Deserialize ISO-8601 formatted string into Datetime object.
:param str attr: response string to be deserialized.
+ :return: Deserialized ISO datetime
:rtype: Datetime
:raises: DeserializationError if string format invalid.
"""
@@ -1982,9 +2094,8 @@ def deserialize_iso(attr):
raise OverflowError("Hit max or min date")
except (ValueError, OverflowError, AttributeError) as err:
msg = "Cannot deserialize datetime object."
- raise_with_traceback(DeserializationError, msg, err)
- else:
- return date_obj
+ raise DeserializationError(msg) from err
+ return date_obj
@staticmethod
def deserialize_unix(attr):
@@ -1992,15 +2103,16 @@ def deserialize_unix(attr):
This is represented as seconds.
:param int attr: Object to be serialized.
+ :return: Deserialized datetime
:rtype: Datetime
:raises: DeserializationError if format invalid
"""
if isinstance(attr, ET.Element):
attr = int(attr.text) # type: ignore
try:
+ attr = int(attr)
date_obj = datetime.datetime.fromtimestamp(attr, TZ_UTC)
except ValueError as err:
msg = "Cannot deserialize to unix datetime object."
- raise_with_traceback(DeserializationError, msg, err)
- else:
- return date_obj
+ raise DeserializationError(msg) from err
+ return date_obj
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_site_recovery_management_client.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_site_recovery_management_client.py
index 0b8b27fb7f7b..03123dedb073 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_site_recovery_management_client.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_site_recovery_management_client.py
@@ -8,14 +8,19 @@
from copy import deepcopy
from typing import Any, TYPE_CHECKING
+from typing_extensions import Self
+from azure.core.pipeline import policies
from azure.core.rest import HttpRequest, HttpResponse
from azure.mgmt.core import ARMPipelineClient
+from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy
from . import models as _models
from ._configuration import SiteRecoveryManagementClientConfiguration
from ._serialization import Deserializer, Serializer
from .operations import (
+ ClusterRecoveryPointOperations,
+ ClusterRecoveryPointsOperations,
MigrationRecoveryPointsOperations,
Operations,
RecoveryPointsOperations,
@@ -32,6 +37,7 @@
ReplicationPoliciesOperations,
ReplicationProtectableItemsOperations,
ReplicationProtectedItemsOperations,
+ ReplicationProtectionClustersOperations,
ReplicationProtectionContainerMappingsOperations,
ReplicationProtectionContainersOperations,
ReplicationProtectionIntentsOperations,
@@ -47,11 +53,10 @@
)
if TYPE_CHECKING:
- # pylint: disable=unused-import,ungrouped-imports
from azure.core.credentials import TokenCredential
-class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
+class SiteRecoveryManagementClient: # pylint: disable=too-many-instance-attributes
"""SiteRecoveryManagementClient.
:ivar operations: Operations operations
@@ -101,6 +106,15 @@ class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-versio
:ivar target_compute_sizes: TargetComputeSizesOperations operations
:vartype target_compute_sizes:
azure.mgmt.recoveryservicessiterecovery.operations.TargetComputeSizesOperations
+ :ivar replication_protection_clusters: ReplicationProtectionClustersOperations operations
+ :vartype replication_protection_clusters:
+ azure.mgmt.recoveryservicessiterecovery.operations.ReplicationProtectionClustersOperations
+ :ivar cluster_recovery_points: ClusterRecoveryPointsOperations operations
+ :vartype cluster_recovery_points:
+ azure.mgmt.recoveryservicessiterecovery.operations.ClusterRecoveryPointsOperations
+ :ivar cluster_recovery_point: ClusterRecoveryPointOperations operations
+ :vartype cluster_recovery_point:
+ azure.mgmt.recoveryservicessiterecovery.operations.ClusterRecoveryPointOperations
:ivar replication_protection_container_mappings:
ReplicationProtectionContainerMappingsOperations operations
:vartype replication_protection_container_mappings:
@@ -152,7 +166,7 @@ class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-versio
:type resource_name: str
:param base_url: Service URL. Default value is "https://management.azure.com".
:type base_url: str
- :keyword api_version: Api Version. Default value is "2023-08-01". Note that overriding this
+ :keyword api_version: Api Version. Default value is "2025-01-01". Note that overriding this
default value may result in unsupported behavior.
:paramtype api_version: str
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
@@ -175,7 +189,25 @@ def __init__(
resource_name=resource_name,
**kwargs
)
- self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs)
+ _policies = kwargs.pop("policies", None)
+ if _policies is None:
+ _policies = [
+ policies.RequestIdPolicy(**kwargs),
+ self._config.headers_policy,
+ self._config.user_agent_policy,
+ self._config.proxy_policy,
+ policies.ContentDecodePolicy(**kwargs),
+ ARMAutoResourceProviderRegistrationPolicy(),
+ self._config.redirect_policy,
+ self._config.retry_policy,
+ self._config.authentication_policy,
+ self._config.custom_hook_policy,
+ self._config.logging_policy,
+ policies.DistributedTracingPolicy(**kwargs),
+ policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
+ self._config.http_logging_policy,
+ ]
+ self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs)
client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)}
self._serialize = Serializer(client_models)
@@ -225,6 +257,15 @@ def __init__(
self.target_compute_sizes = TargetComputeSizesOperations(
self._client, self._config, self._serialize, self._deserialize
)
+ self.replication_protection_clusters = ReplicationProtectionClustersOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
+ self.cluster_recovery_points = ClusterRecoveryPointsOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
+ self.cluster_recovery_point = ClusterRecoveryPointOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
self.replication_protection_container_mappings = ReplicationProtectionContainerMappingsOperations(
self._client, self._config, self._serialize, self._deserialize
)
@@ -262,7 +303,7 @@ def __init__(
self._client, self._config, self._serialize, self._deserialize
)
- def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
+ def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse:
"""Runs the network request through the client's chained policies.
>>> from azure.core.rest import HttpRequest
@@ -282,12 +323,12 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
request_copy = deepcopy(request)
request_copy.url = self._client.format_url(request_copy.url)
- return self._client.send_request(request_copy, **kwargs)
+ return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore
def close(self) -> None:
self._client.close()
- def __enter__(self) -> "SiteRecoveryManagementClient":
+ def __enter__(self) -> Self:
self._client.__enter__()
return self
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_vendor.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_vendor.py
deleted file mode 100644
index 0dafe0e287ff..000000000000
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_vendor.py
+++ /dev/null
@@ -1,16 +0,0 @@
-# --------------------------------------------------------------------------
-# Copyright (c) Microsoft Corporation. All rights reserved.
-# Licensed under the MIT License. See License.txt in the project root for 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.core.pipeline.transport import HttpRequest
-
-
-def _convert_request(request, files=None):
- data = request.content if not files else None
- request = HttpRequest(method=request.method, url=request.url, headers=request.headers, data=data)
- if files:
- request.set_formdata_body(files)
- return request
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_version.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_version.py
index dbf4c577231c..e5754a47ce68 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_version.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/_version.py
@@ -6,4 +6,4 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
-VERSION = "1.2.0"
+VERSION = "1.0.0b1"
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/__init__.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/__init__.py
index eb681300ab9c..abc9bca4dd51 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/__init__.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/__init__.py
@@ -5,12 +5,18 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+# pylint: disable=wrong-import-position
-from ._site_recovery_management_client import SiteRecoveryManagementClient
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._patch import * # pylint: disable=unused-wildcard-import
+
+from ._site_recovery_management_client import SiteRecoveryManagementClient # type: ignore
try:
from ._patch import __all__ as _patch_all
- from ._patch import * # pylint: disable=unused-wildcard-import
+ from ._patch import *
except ImportError:
_patch_all = []
from ._patch import patch_sdk as _patch_sdk
@@ -18,6 +24,6 @@
__all__ = [
"SiteRecoveryManagementClient",
]
-__all__.extend([p for p in _patch_all if p not in __all__])
+__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_configuration.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_configuration.py
index 3ce24ec64b8d..ddee2c01c94b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_configuration.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_configuration.py
@@ -8,18 +8,16 @@
from typing import Any, TYPE_CHECKING
-from azure.core.configuration import Configuration
from azure.core.pipeline import policies
from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy
from .._version import VERSION
if TYPE_CHECKING:
- # pylint: disable=unused-import,ungrouped-imports
from azure.core.credentials_async import AsyncTokenCredential
-class SiteRecoveryManagementClientConfiguration(Configuration): # pylint: disable=too-many-instance-attributes
+class SiteRecoveryManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long
"""Configuration for SiteRecoveryManagementClient.
Note that all parameters used to create this instance are saved as instance
@@ -34,7 +32,7 @@ class SiteRecoveryManagementClientConfiguration(Configuration): # pylint: disab
:type resource_group_name: str
:param resource_name: The name of the recovery services vault. Required.
:type resource_name: str
- :keyword api_version: Api Version. Default value is "2023-08-01". Note that overriding this
+ :keyword api_version: Api Version. Default value is "2025-01-01". Note that overriding this
default value may result in unsupported behavior.
:paramtype api_version: str
"""
@@ -47,8 +45,7 @@ def __init__(
resource_name: str,
**kwargs: Any
) -> None:
- super(SiteRecoveryManagementClientConfiguration, self).__init__(**kwargs)
- api_version: str = kwargs.pop("api_version", "2023-08-01")
+ api_version: str = kwargs.pop("api_version", "2025-01-01")
if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
@@ -66,6 +63,7 @@ def __init__(
self.api_version = api_version
self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"])
kwargs.setdefault("sdk_moniker", "mgmt-recoveryservicessiterecovery/{}".format(VERSION))
+ self.polling_interval = kwargs.get("polling_interval", 30)
self._configure(**kwargs)
def _configure(self, **kwargs: Any) -> None:
@@ -74,9 +72,9 @@ def _configure(self, **kwargs: Any) -> None:
self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs)
self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs)
self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs)
- self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs)
self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs)
self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs)
+ self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs)
self.authentication_policy = kwargs.get("authentication_policy")
if self.credential and not self.authentication_policy:
self.authentication_policy = AsyncARMChallengeAuthenticationPolicy(
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_site_recovery_management_client.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_site_recovery_management_client.py
index f9b44a3adb18..5abb4db833e2 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_site_recovery_management_client.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/_site_recovery_management_client.py
@@ -8,14 +8,19 @@
from copy import deepcopy
from typing import Any, Awaitable, TYPE_CHECKING
+from typing_extensions import Self
+from azure.core.pipeline import policies
from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.mgmt.core import AsyncARMPipelineClient
+from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy
from .. import models as _models
from .._serialization import Deserializer, Serializer
from ._configuration import SiteRecoveryManagementClientConfiguration
from .operations import (
+ ClusterRecoveryPointOperations,
+ ClusterRecoveryPointsOperations,
MigrationRecoveryPointsOperations,
Operations,
RecoveryPointsOperations,
@@ -32,6 +37,7 @@
ReplicationPoliciesOperations,
ReplicationProtectableItemsOperations,
ReplicationProtectedItemsOperations,
+ ReplicationProtectionClustersOperations,
ReplicationProtectionContainerMappingsOperations,
ReplicationProtectionContainersOperations,
ReplicationProtectionIntentsOperations,
@@ -47,11 +53,10 @@
)
if TYPE_CHECKING:
- # pylint: disable=unused-import,ungrouped-imports
from azure.core.credentials_async import AsyncTokenCredential
-class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
+class SiteRecoveryManagementClient: # pylint: disable=too-many-instance-attributes
"""SiteRecoveryManagementClient.
:ivar operations: Operations operations
@@ -101,6 +106,15 @@ class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-versio
:ivar target_compute_sizes: TargetComputeSizesOperations operations
:vartype target_compute_sizes:
azure.mgmt.recoveryservicessiterecovery.aio.operations.TargetComputeSizesOperations
+ :ivar replication_protection_clusters: ReplicationProtectionClustersOperations operations
+ :vartype replication_protection_clusters:
+ azure.mgmt.recoveryservicessiterecovery.aio.operations.ReplicationProtectionClustersOperations
+ :ivar cluster_recovery_points: ClusterRecoveryPointsOperations operations
+ :vartype cluster_recovery_points:
+ azure.mgmt.recoveryservicessiterecovery.aio.operations.ClusterRecoveryPointsOperations
+ :ivar cluster_recovery_point: ClusterRecoveryPointOperations operations
+ :vartype cluster_recovery_point:
+ azure.mgmt.recoveryservicessiterecovery.aio.operations.ClusterRecoveryPointOperations
:ivar replication_protection_container_mappings:
ReplicationProtectionContainerMappingsOperations operations
:vartype replication_protection_container_mappings:
@@ -152,7 +166,7 @@ class SiteRecoveryManagementClient: # pylint: disable=client-accepts-api-versio
:type resource_name: str
:param base_url: Service URL. Default value is "https://management.azure.com".
:type base_url: str
- :keyword api_version: Api Version. Default value is "2023-08-01". Note that overriding this
+ :keyword api_version: Api Version. Default value is "2025-01-01". Note that overriding this
default value may result in unsupported behavior.
:paramtype api_version: str
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
@@ -175,7 +189,25 @@ def __init__(
resource_name=resource_name,
**kwargs
)
- self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, config=self._config, **kwargs)
+ _policies = kwargs.pop("policies", None)
+ if _policies is None:
+ _policies = [
+ policies.RequestIdPolicy(**kwargs),
+ self._config.headers_policy,
+ self._config.user_agent_policy,
+ self._config.proxy_policy,
+ policies.ContentDecodePolicy(**kwargs),
+ AsyncARMAutoResourceProviderRegistrationPolicy(),
+ self._config.redirect_policy,
+ self._config.retry_policy,
+ self._config.authentication_policy,
+ self._config.custom_hook_policy,
+ self._config.logging_policy,
+ policies.DistributedTracingPolicy(**kwargs),
+ policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None,
+ self._config.http_logging_policy,
+ ]
+ self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs)
client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)}
self._serialize = Serializer(client_models)
@@ -225,6 +257,15 @@ def __init__(
self.target_compute_sizes = TargetComputeSizesOperations(
self._client, self._config, self._serialize, self._deserialize
)
+ self.replication_protection_clusters = ReplicationProtectionClustersOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
+ self.cluster_recovery_points = ClusterRecoveryPointsOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
+ self.cluster_recovery_point = ClusterRecoveryPointOperations(
+ self._client, self._config, self._serialize, self._deserialize
+ )
self.replication_protection_container_mappings = ReplicationProtectionContainerMappingsOperations(
self._client, self._config, self._serialize, self._deserialize
)
@@ -262,7 +303,9 @@ def __init__(
self._client, self._config, self._serialize, self._deserialize
)
- def _send_request(self, request: HttpRequest, **kwargs: Any) -> Awaitable[AsyncHttpResponse]:
+ def _send_request(
+ self, request: HttpRequest, *, stream: bool = False, **kwargs: Any
+ ) -> Awaitable[AsyncHttpResponse]:
"""Runs the network request through the client's chained policies.
>>> from azure.core.rest import HttpRequest
@@ -282,12 +325,12 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> Awaitable[AsyncH
request_copy = deepcopy(request)
request_copy.url = self._client.format_url(request_copy.url)
- return self._client.send_request(request_copy, **kwargs)
+ return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore
async def close(self) -> None:
await self._client.close()
- async def __aenter__(self) -> "SiteRecoveryManagementClient":
+ async def __aenter__(self) -> Self:
await self._client.__aenter__()
return self
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/__init__.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/__init__.py
index b7fd6eae9142..d7db9ef85a31 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/__init__.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/__init__.py
@@ -5,38 +5,47 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+# pylint: disable=wrong-import-position
-from ._operations import Operations
-from ._replication_alert_settings_operations import ReplicationAlertSettingsOperations
-from ._replication_appliances_operations import ReplicationAppliancesOperations
-from ._replication_eligibility_results_operations import ReplicationEligibilityResultsOperations
-from ._replication_events_operations import ReplicationEventsOperations
-from ._replication_fabrics_operations import ReplicationFabricsOperations
-from ._replication_logical_networks_operations import ReplicationLogicalNetworksOperations
-from ._replication_networks_operations import ReplicationNetworksOperations
-from ._replication_network_mappings_operations import ReplicationNetworkMappingsOperations
-from ._replication_protection_containers_operations import ReplicationProtectionContainersOperations
-from ._replication_migration_items_operations import ReplicationMigrationItemsOperations
-from ._migration_recovery_points_operations import MigrationRecoveryPointsOperations
-from ._replication_protectable_items_operations import ReplicationProtectableItemsOperations
-from ._replication_protected_items_operations import ReplicationProtectedItemsOperations
-from ._recovery_points_operations import RecoveryPointsOperations
-from ._target_compute_sizes_operations import TargetComputeSizesOperations
-from ._replication_protection_container_mappings_operations import ReplicationProtectionContainerMappingsOperations
-from ._replication_recovery_services_providers_operations import ReplicationRecoveryServicesProvidersOperations
-from ._replication_storage_classifications_operations import ReplicationStorageClassificationsOperations
-from ._replication_storage_classification_mappings_operations import ReplicationStorageClassificationMappingsOperations
-from ._replicationv_centers_operations import ReplicationvCentersOperations
-from ._replication_jobs_operations import ReplicationJobsOperations
-from ._replication_policies_operations import ReplicationPoliciesOperations
-from ._replication_protection_intents_operations import ReplicationProtectionIntentsOperations
-from ._replication_recovery_plans_operations import ReplicationRecoveryPlansOperations
-from ._supported_operating_systems_operations import SupportedOperatingSystemsOperations
-from ._replication_vault_health_operations import ReplicationVaultHealthOperations
-from ._replication_vault_setting_operations import ReplicationVaultSettingOperations
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._patch import * # pylint: disable=unused-wildcard-import
+
+from ._operations import Operations # type: ignore
+from ._replication_alert_settings_operations import ReplicationAlertSettingsOperations # type: ignore
+from ._replication_appliances_operations import ReplicationAppliancesOperations # type: ignore
+from ._replication_eligibility_results_operations import ReplicationEligibilityResultsOperations # type: ignore
+from ._replication_events_operations import ReplicationEventsOperations # type: ignore
+from ._replication_fabrics_operations import ReplicationFabricsOperations # type: ignore
+from ._replication_logical_networks_operations import ReplicationLogicalNetworksOperations # type: ignore
+from ._replication_networks_operations import ReplicationNetworksOperations # type: ignore
+from ._replication_network_mappings_operations import ReplicationNetworkMappingsOperations # type: ignore
+from ._replication_protection_containers_operations import ReplicationProtectionContainersOperations # type: ignore
+from ._replication_migration_items_operations import ReplicationMigrationItemsOperations # type: ignore
+from ._migration_recovery_points_operations import MigrationRecoveryPointsOperations # type: ignore
+from ._replication_protectable_items_operations import ReplicationProtectableItemsOperations # type: ignore
+from ._replication_protected_items_operations import ReplicationProtectedItemsOperations # type: ignore
+from ._recovery_points_operations import RecoveryPointsOperations # type: ignore
+from ._target_compute_sizes_operations import TargetComputeSizesOperations # type: ignore
+from ._replication_protection_clusters_operations import ReplicationProtectionClustersOperations # type: ignore
+from ._cluster_recovery_points_operations import ClusterRecoveryPointsOperations # type: ignore
+from ._cluster_recovery_point_operations import ClusterRecoveryPointOperations # type: ignore
+from ._replication_protection_container_mappings_operations import ReplicationProtectionContainerMappingsOperations # type: ignore
+from ._replication_recovery_services_providers_operations import ReplicationRecoveryServicesProvidersOperations # type: ignore
+from ._replication_storage_classifications_operations import ReplicationStorageClassificationsOperations # type: ignore
+from ._replication_storage_classification_mappings_operations import ReplicationStorageClassificationMappingsOperations # type: ignore
+from ._replicationv_centers_operations import ReplicationvCentersOperations # type: ignore
+from ._replication_jobs_operations import ReplicationJobsOperations # type: ignore
+from ._replication_policies_operations import ReplicationPoliciesOperations # type: ignore
+from ._replication_protection_intents_operations import ReplicationProtectionIntentsOperations # type: ignore
+from ._replication_recovery_plans_operations import ReplicationRecoveryPlansOperations # type: ignore
+from ._supported_operating_systems_operations import SupportedOperatingSystemsOperations # type: ignore
+from ._replication_vault_health_operations import ReplicationVaultHealthOperations # type: ignore
+from ._replication_vault_setting_operations import ReplicationVaultSettingOperations # type: ignore
from ._patch import __all__ as _patch_all
-from ._patch import * # pylint: disable=unused-wildcard-import
+from ._patch import *
from ._patch import patch_sdk as _patch_sdk
__all__ = [
@@ -56,6 +65,9 @@
"ReplicationProtectedItemsOperations",
"RecoveryPointsOperations",
"TargetComputeSizesOperations",
+ "ReplicationProtectionClustersOperations",
+ "ClusterRecoveryPointsOperations",
+ "ClusterRecoveryPointOperations",
"ReplicationProtectionContainerMappingsOperations",
"ReplicationRecoveryServicesProvidersOperations",
"ReplicationStorageClassificationsOperations",
@@ -69,5 +81,5 @@
"ReplicationVaultHealthOperations",
"ReplicationVaultSettingOperations",
]
-__all__.extend([p for p in _patch_all if p not in __all__])
+__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_point_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_point_operations.py
new file mode 100644
index 000000000000..42e7f07f1b6b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_point_operations.py
@@ -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.
+# --------------------------------------------------------------------------
+import sys
+from typing import Any, Callable, Dict, Optional, TypeVar
+
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ map_error,
+)
+from azure.core.pipeline import PipelineResponse
+from azure.core.rest import AsyncHttpResponse, HttpRequest
+from azure.core.tracing.decorator_async import distributed_trace_async
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+
+from ... import models as _models
+from ...operations._cluster_recovery_point_operations import build_get_request
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+T = TypeVar("T")
+ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
+
+
+class ClusterRecoveryPointOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.aio.SiteRecoveryManagementClient`'s
+ :attr:`cluster_recovery_point` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs) -> None:
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace_async
+ async def get(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ recovery_point_name: str,
+ **kwargs: Any
+ ) -> _models.ClusterRecoveryPoint:
+ """Gets a recovery point.
+
+ Get the details of specified recovery point.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param recovery_point_name: The recovery point name. Required.
+ :type recovery_point_name: str
+ :return: ClusterRecoveryPoint or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint
+ :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.ClusterRecoveryPoint] = kwargs.pop("cls", None)
+
+ _request = build_get_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ recovery_point_name=recovery_point_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ClusterRecoveryPoint", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_points_operations.py
new file mode 100644
index 000000000000..59d6dca8de23
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_cluster_recovery_points_operations.py
@@ -0,0 +1,154 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import sys
+from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
+import urllib.parse
+
+from azure.core.async_paging import AsyncItemPaged, AsyncList
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ map_error,
+)
+from azure.core.pipeline import PipelineResponse
+from azure.core.rest import AsyncHttpResponse, HttpRequest
+from azure.core.tracing.decorator import distributed_trace
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+
+from ... import models as _models
+from ...operations._cluster_recovery_points_operations import build_list_by_replication_protection_cluster_request
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+T = TypeVar("T")
+ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
+
+
+class ClusterRecoveryPointsOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.aio.SiteRecoveryManagementClient`'s
+ :attr:`cluster_recovery_points` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs) -> None:
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace
+ def list_by_replication_protection_cluster(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> AsyncIterable["_models.ClusterRecoveryPoint"]:
+ """Gets the list of cluster recovery points.
+
+ The list of cluster recovery points.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An iterator like instance of either ClusterRecoveryPoint or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ClusterRecoveryPointCollection] = 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_replication_protection_cluster_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ else:
+ # make call to next link with the client's api-version
+ _parsed_next_link = urllib.parse.urlparse(next_link)
+ _next_request_params = case_insensitive_dict(
+ {
+ key: [urllib.parse.quote(v) for v in value]
+ for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items()
+ }
+ )
+ _next_request_params["api-version"] = self._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("ClusterRecoveryPointCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, AsyncList(list_of_elem)
+
+ async def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return AsyncItemPaged(get_next, extract_data)
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_migration_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_migration_recovery_points_operations.py
index 787b3ba6ca2f..8a30736c1d46 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_migration_recovery_points_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_migration_recovery_points_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,20 +19,22 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._migration_recovery_points_operations import (
build_get_request,
build_list_by_replication_migration_items_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -70,7 +72,6 @@ def list_by_replication_migration_items(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationRecoveryPoint or the result of
cls(response)
:rtype:
@@ -83,7 +84,7 @@ def list_by_replication_migration_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationRecoveryPointCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -94,20 +95,18 @@ def list_by_replication_migration_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_migration_items_request(
+ _request = build_list_by_replication_migration_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_migration_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -119,13 +118,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationRecoveryPointCollection", pipeline_response)
@@ -135,11 +133,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -151,10 +149,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_migration_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints"
- }
-
@distributed_trace_async
async def get(
self,
@@ -176,12 +170,11 @@ async def get(
:type migration_item_name: str
:param migration_recovery_point_name: The migration recovery point name. Required.
:type migration_recovery_point_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: MigrationRecoveryPoint or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.MigrationRecoveryPoint
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -195,25 +188,23 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationRecoveryPoint] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
migration_recovery_point_name=migration_recovery_point_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -222,13 +213,9 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("MigrationRecoveryPoint", pipeline_response)
+ deserialized = self._deserialize("MigrationRecoveryPoint", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_operations.py
index 492ed419622a..89343aed19ef 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._operations import build_list_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -58,7 +60,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.OperationsDiscovery"]:
Operation to return the list of available operations.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either OperationsDiscovery or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.OperationsDiscovery]
@@ -70,7 +71,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.OperationsDiscovery"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.OperationsDiscoveryCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -81,16 +82,14 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.OperationsDiscovery"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -102,13 +101,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("OperationsDiscoveryCollection", pipeline_response)
@@ -118,11 +116,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -133,7 +131,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/operations"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_recovery_points_operations.py
index 78781223a3b6..64b790b4dd47 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_recovery_points_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_recovery_points_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,20 +19,22 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._recovery_points_operations import (
build_get_request,
build_list_by_replication_protected_items_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -70,7 +72,6 @@ def list_by_replication_protected_items(
:type protection_container_name: str
:param replicated_protected_item_name: The replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryPoint or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPoint]
@@ -82,7 +83,7 @@ def list_by_replication_protected_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPointCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -93,20 +94,18 @@ def list_by_replication_protected_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protected_items_request(
+ _request = build_list_by_replication_protected_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protected_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -118,13 +117,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryPointCollection", pipeline_response)
@@ -134,11 +132,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -150,10 +148,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_protected_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints"
- }
-
@distributed_trace_async
async def get(
self,
@@ -175,12 +169,11 @@ async def get(
:type replicated_protected_item_name: str
:param recovery_point_name: The recovery point name. Required.
:type recovery_point_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryPoint or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPoint
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -194,25 +187,23 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPoint] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
recovery_point_name=recovery_point_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -221,13 +212,9 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryPoint", pipeline_response)
+ deserialized = self._deserialize("RecoveryPoint", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_alert_settings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_alert_settings_operations.py
index 6e86c74c9202..54ebbf1881ba 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_alert_settings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_alert_settings_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,6 +6,7 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
+import sys
from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, overload
import urllib.parse
@@ -20,21 +20,23 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_alert_settings_operations import (
build_create_request,
build_get_request,
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -64,7 +66,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Alert"]:
Gets the list of email notification(alert) configurations for the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Alert or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
@@ -76,7 +77,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Alert"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.AlertCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -87,17 +88,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Alert"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -109,13 +108,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("AlertCollection", pipeline_response)
@@ -125,11 +123,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -141,10 +139,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings"
- }
-
@distributed_trace_async
async def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
"""Gets an email notification(alert) configuration.
@@ -153,12 +147,11 @@ async def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
:param alert_setting_name: The name of the email notification configuration. Required.
:type alert_setting_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -172,22 +165,20 @@ async def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Alert] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
alert_setting_name=alert_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -196,16 +187,12 @@ async def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Alert", pipeline_response)
+ deserialized = self._deserialize("Alert", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}"
- }
+ return deserialized # type: ignore
@overload
async def create(
@@ -227,7 +214,6 @@ async def create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
@@ -235,7 +221,7 @@ async def create(
@overload
async def create(
- self, alert_setting_name: str, request: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, alert_setting_name: str, request: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> _models.Alert:
"""Configures email notifications for this vault.
@@ -244,11 +230,10 @@ async def create(
:param alert_setting_name: The name of the email notification(alert) configuration. Required.
:type alert_setting_name: str
:param request: The input to configure the email notification(alert). Required.
- :type request: IO
+ :type request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
@@ -256,7 +241,7 @@ async def create(
@distributed_trace_async
async def create(
- self, alert_setting_name: str, request: Union[_models.ConfigureAlertRequest, IO], **kwargs: Any
+ self, alert_setting_name: str, request: Union[_models.ConfigureAlertRequest, IO[bytes]], **kwargs: Any
) -> _models.Alert:
"""Configures email notifications for this vault.
@@ -265,17 +250,14 @@ async def create(
:param alert_setting_name: The name of the email notification(alert) configuration. Required.
:type alert_setting_name: str
:param request: The input to configure the email notification(alert). Is either a
- ConfigureAlertRequest type or a IO type. Required.
- :type request: ~azure.mgmt.recoveryservicessiterecovery.models.ConfigureAlertRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
+ ConfigureAlertRequest type or a IO[bytes] type. Required.
+ :type request: ~azure.mgmt.recoveryservicessiterecovery.models.ConfigureAlertRequest or
+ IO[bytes]
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -298,25 +280,23 @@ async def create(
else:
_json = self._serialize.body(request, "ConfigureAlertRequest")
- request = build_create_request(
+ _request = build_create_request(
alert_setting_name=alert_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self.create.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -325,13 +305,9 @@ async def create(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Alert", pipeline_response)
+ deserialized = self._deserialize("Alert", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_appliances_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_appliances_operations.py
index 33a345932acb..5294442d335b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_appliances_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_appliances_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_appliances_operations import build_list_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -60,7 +62,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationAppliance or the result of
cls(response)
:rtype:
@@ -73,7 +74,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ApplianceCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -84,18 +85,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -107,13 +106,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ApplianceCollection", pipeline_response)
@@ -123,11 +121,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -138,7 +136,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAppliances"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_eligibility_results_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_eligibility_results_operations.py
index e9de1209de2c..c1b9e69ce5ec 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_eligibility_results_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_eligibility_results_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Optional, TypeVar
from azure.core.exceptions import (
@@ -17,16 +17,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_eligibility_results_operations import build_get_request, build_list_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -58,12 +60,11 @@ async def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replic
:param virtual_machine_name: Virtual Machine name. Required.
:type virtual_machine_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationEligibilityResultsCollection or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationEligibilityResultsCollection
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -77,21 +78,19 @@ async def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replic
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationEligibilityResultsCollection] = kwargs.pop("cls", None)
- request = build_list_request(
+ _request = build_list_request(
virtual_machine_name=virtual_machine_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -100,16 +99,12 @@ async def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replic
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationEligibilityResultsCollection", pipeline_response)
+ deserialized = self._deserialize("ReplicationEligibilityResultsCollection", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationEligibilityResults:
@@ -119,12 +114,11 @@ async def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replica
:param virtual_machine_name: Virtual Machine name. Required.
:type virtual_machine_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationEligibilityResults or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationEligibilityResults
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -138,21 +132,19 @@ async def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replica
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationEligibilityResults] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
virtual_machine_name=virtual_machine_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -161,13 +153,9 @@ async def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.Replica
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationEligibilityResults", pipeline_response)
+ deserialized = self._deserialize("ReplicationEligibilityResults", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_events_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_events_operations.py
index 6a86c1b632da..74014c7050ac 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_events_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_events_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,17 +19,19 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_events_operations import build_get_request, build_list_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -61,7 +63,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Event or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Event]
@@ -73,7 +74,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.EventCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -84,18 +85,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -107,13 +106,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("EventCollection", pipeline_response)
@@ -123,11 +121,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -139,10 +137,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents"
- }
-
@distributed_trace_async
async def get(self, event_name: str, **kwargs: Any) -> _models.Event:
"""Get the details of an Azure Site recovery event.
@@ -151,12 +145,11 @@ async def get(self, event_name: str, **kwargs: Any) -> _models.Event:
:param event_name: The name of the Azure Site Recovery event. Required.
:type event_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Event or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Event
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -170,22 +163,20 @@ async def get(self, event_name: str, **kwargs: Any) -> _models.Event:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Event] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
event_name=event_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -194,13 +185,9 @@ async def get(self, event_name: str, **kwargs: Any) -> _models.Event:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Event", pipeline_response)
+ deserialized = self._deserialize("Event", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_fabrics_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_fabrics_operations.py
index 15ac0ea860de..5101838ed5c9 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_fabrics_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_fabrics_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_fabrics_operations import (
build_check_consistency_request,
build_create_request,
@@ -44,6 +45,10 @@
build_renew_certificate_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -73,7 +78,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Fabric"]:
Gets a list of the Azure Site Recovery fabrics in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Fabric or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
@@ -85,7 +89,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Fabric"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.FabricCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -96,17 +100,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Fabric"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -118,13 +120,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("FabricCollection", pipeline_response)
@@ -134,11 +135,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -150,10 +151,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: Any) -> _models.Fabric:
"""Gets the details of an ASR fabric.
@@ -164,12 +161,11 @@ async def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: An
:type fabric_name: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Fabric or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Fabric
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -183,23 +179,21 @@ async def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: An
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Fabric] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -208,21 +202,17 @@ async def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: An
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
- self, fabric_name: str, input: Union[_models.FabricCreationInput, IO], **kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ self, fabric_name: str, input: Union[_models.FabricCreationInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -235,7 +225,7 @@ async def _create_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -245,45 +235,42 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "FabricCreationInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -305,14 +292,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -322,7 +301,7 @@ async def begin_create(
@overload
async def begin_create(
- self, fabric_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, fabric_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Fabric]:
"""Creates an Azure Site Recovery fabric.
@@ -331,18 +310,10 @@ async def begin_create(
:param fabric_name: Name of the ASR fabric. Required.
:type fabric_name: str
:param input: Fabric creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -352,7 +323,7 @@ async def begin_create(
@distributed_trace_async
async def begin_create(
- self, fabric_name: str, input: Union[_models.FabricCreationInput, IO], **kwargs: Any
+ self, fabric_name: str, input: Union[_models.FabricCreationInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Fabric]:
"""Creates an Azure Site Recovery fabric.
@@ -360,20 +331,9 @@ async def begin_create(
:param fabric_name: Name of the ASR fabric. Required.
:type fabric_name: str
- :param input: Fabric creation input. Is either a FabricCreationInput type or a IO type.
+ :param input: Fabric creation input. Is either a FabricCreationInput type or a IO[bytes] type.
Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.FabricCreationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.FabricCreationInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -400,12 +360,13 @@ async def begin_create(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -415,22 +376,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return AsyncLROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _purge_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _purge_initial(self, fabric_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -442,38 +399,41 @@ async def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_purge(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -483,14 +443,6 @@ async def begin_purge(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[N
:param fabric_name: ASR fabric to purge. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -504,7 +456,7 @@ async def begin_purge(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[N
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._purge_initial( # type: ignore
+ raw_result = await self._purge_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -512,11 +464,12 @@ async def begin_purge(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[N
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -525,20 +478,16 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
-
- async def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> Optional[_models.Fabric]:
- error_map = {
+ async def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -550,44 +499,41 @@ async def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> O
_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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_check_consistency_request(
+ _request = build_check_consistency_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._check_consistency_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _check_consistency_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[_models.Fabric]:
@@ -597,14 +543,6 @@ async def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> Asyn
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -628,12 +566,13 @@ async def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> Asyn
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -643,22 +582,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_check_consistency.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency"
- }
+ return AsyncLROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _migrate_to_aad_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _migrate_to_aad_initial(self, fabric_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -670,38 +605,41 @@ async def _migrate_to_aad_initial( # pylint: disable=inconsistent-return-statem
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_migrate_to_aad_request(
+ _request = build_migrate_to_aad_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._migrate_to_aad_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _migrate_to_aad_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -711,14 +649,6 @@ async def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> AsyncLR
:param fabric_name: ASR fabric to migrate. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -732,7 +662,7 @@ async def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> AsyncLR
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._migrate_to_aad_initial( # type: ignore
+ raw_result = await self._migrate_to_aad_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -740,11 +670,12 @@ async def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> AsyncLR
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -753,25 +684,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_migrate_to_aad.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _reassociate_gateway_initial(
self,
fabric_name: str,
- failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO],
+ failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -784,7 +711,7 @@ async def _reassociate_gateway_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -794,45 +721,42 @@ async def _reassociate_gateway_initial(
else:
_json = self._serialize.body(failover_process_server_request, "FailoverProcessServerRequest")
- request = build_reassociate_gateway_request(
+ _request = build_reassociate_gateway_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._reassociate_gateway_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _reassociate_gateway_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway"
- }
+ return deserialized # type: ignore
@overload
async def begin_reassociate_gateway(
@@ -856,14 +780,6 @@ async def begin_reassociate_gateway(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -875,7 +791,7 @@ async def begin_reassociate_gateway(
async def begin_reassociate_gateway(
self,
fabric_name: str,
- failover_process_server_request: IO,
+ failover_process_server_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -888,18 +804,10 @@ async def begin_reassociate_gateway(
:type fabric_name: str
:param failover_process_server_request: The input to the failover process server operation.
Required.
- :type failover_process_server_request: IO
+ :type failover_process_server_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -911,7 +819,7 @@ async def begin_reassociate_gateway(
async def begin_reassociate_gateway(
self,
fabric_name: str,
- failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO],
+ failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.Fabric]:
"""Perform failover of the process server.
@@ -921,20 +829,9 @@ async def begin_reassociate_gateway(
:param fabric_name: The name of the fabric containing the process server. Required.
:type fabric_name: str
:param failover_process_server_request: The input to the failover process server operation. Is
- either a FailoverProcessServerRequest type or a IO type. Required.
+ either a FailoverProcessServerRequest type or a IO[bytes] type. Required.
:type failover_process_server_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.FailoverProcessServerRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.FailoverProcessServerRequest or IO[bytes]
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -961,12 +858,13 @@ async def begin_reassociate_gateway(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -976,22 +874,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reassociate_gateway.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway"
- }
+ return AsyncLROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _delete_initial(self, fabric_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1003,38 +897,41 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -1044,14 +941,6 @@ async def begin_delete(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[
:param fabric_name: ASR fabric to delete. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1065,7 +954,7 @@ async def begin_delete(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -1073,11 +962,12 @@ async def begin_delete(self, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -1086,22 +976,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _renew_certificate_initial(
- self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO], **kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1114,7 +1000,7 @@ async def _renew_certificate_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1124,45 +1010,42 @@ async def _renew_certificate_initial(
else:
_json = self._serialize.body(renew_certificate, "RenewCertificateInput")
- request = build_renew_certificate_request(
+ _request = build_renew_certificate_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._renew_certificate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _renew_certificate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate"
- }
+ return deserialized # type: ignore
@overload
async def begin_renew_certificate(
@@ -1184,14 +1067,6 @@ async def begin_renew_certificate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -1201,7 +1076,7 @@ async def begin_renew_certificate(
@overload
async def begin_renew_certificate(
- self, fabric_name: str, renew_certificate: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, fabric_name: str, renew_certificate: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Fabric]:
"""Renews certificate for the fabric.
@@ -1210,18 +1085,10 @@ async def begin_renew_certificate(
:param fabric_name: fabric name to renew certs for. Required.
:type fabric_name: str
:param renew_certificate: Renew certificate input. Required.
- :type renew_certificate: IO
+ :type renew_certificate: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -1231,7 +1098,7 @@ async def begin_renew_certificate(
@distributed_trace_async
async def begin_renew_certificate(
- self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO], **kwargs: Any
+ self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Fabric]:
"""Renews certificate for the fabric.
@@ -1240,20 +1107,9 @@ async def begin_renew_certificate(
:param fabric_name: fabric name to renew certs for. Required.
:type fabric_name: str
:param renew_certificate: Renew certificate input. Is either a RenewCertificateInput type or a
- IO type. Required.
+ IO[bytes] type. Required.
:type renew_certificate: ~azure.mgmt.recoveryservicessiterecovery.models.RenewCertificateInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either Fabric or the result of
cls(response)
:rtype:
@@ -1280,12 +1136,13 @@ async def begin_renew_certificate(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1295,22 +1152,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_renew_certificate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate"
- }
+ return AsyncLROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _remove_infra_initial( # pylint: disable=inconsistent-return-statements
- self, resource_name: str, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _remove_infra_initial(self, resource_name: str, fabric_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1322,29 +1175,32 @@ async def _remove_infra_initial( # pylint: disable=inconsistent-return-statemen
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_remove_infra_request(
+ _request = build_remove_infra_request(
resource_name=resource_name,
fabric_name=fabric_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._remove_infra_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [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)
@@ -1352,12 +1208,12 @@ async def _remove_infra_initial( # pylint: disable=inconsistent-return-statemen
response_headers = {}
response_headers["Location"] = self._deserialize("str", response.headers.get("Location"))
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, response_headers)
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _remove_infra_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/removeInfra"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -1369,14 +1225,6 @@ async def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwarg
:type resource_name: str
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1390,7 +1238,7 @@ async def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwarg
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._remove_infra_initial( # type: ignore
+ raw_result = await self._remove_infra_initial(
resource_name=resource_name,
fabric_name=fabric_name,
api_version=api_version,
@@ -1399,11 +1247,12 @@ async def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwarg
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -1412,14 +1261,10 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_remove_infra.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/removeInfra"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_jobs_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_jobs_operations.py
index b0488882e781..41cf68ae30c8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_jobs_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_jobs_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_jobs_operations import (
build_cancel_request,
build_export_request,
@@ -40,6 +40,10 @@
build_resume_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -71,7 +75,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Job or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Job]
@@ -83,7 +86,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.JobCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -94,18 +97,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_m
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -117,13 +118,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("JobCollection", pipeline_response)
@@ -133,11 +133,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -149,10 +149,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs"
- }
-
@distributed_trace_async
async def get(self, job_name: str, **kwargs: Any) -> _models.Job:
"""Gets the job details.
@@ -161,12 +157,11 @@ async def get(self, job_name: str, **kwargs: Any) -> _models.Job:
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Job or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Job
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -180,22 +175,20 @@ async def get(self, job_name: str, **kwargs: Any) -> _models.Job:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Job] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -204,19 +197,15 @@ async def get(self, job_name: str, **kwargs: Any) -> _models.Job:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}"
- }
+ return deserialized # type: ignore
- async def _cancel_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job]:
- error_map = {
+ async def _cancel_initial(self, job_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -228,44 +217,41 @@ async def _cancel_initial(self, job_name: str, **kwargs: Any) -> Optional[_model
_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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_cancel_request(
+ _request = build_cancel_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_cancel(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_models.Job]:
@@ -275,14 +261,6 @@ async def begin_cancel(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_mo
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -304,12 +282,13 @@ async def begin_cancel(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_mo
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -319,20 +298,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel"
- }
+ return AsyncLROPoller[_models.Job](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _restart_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job]:
- error_map = {
+ async def _restart_initial(self, job_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -344,44 +321,41 @@ async def _restart_initial(self, job_name: str, **kwargs: Any) -> Optional[_mode
_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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_restart_request(
+ _request = build_restart_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._restart_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _restart_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_restart(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_models.Job]:
@@ -391,14 +365,6 @@ async def begin_restart(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_m
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -420,12 +386,13 @@ async def begin_restart(self, job_name: str, **kwargs: Any) -> AsyncLROPoller[_m
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -435,22 +402,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_restart.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart"
- }
+ return AsyncLROPoller[_models.Job](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _resume_initial(
- self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO], **kwargs: Any
- ) -> Optional[_models.Job]:
- error_map = {
+ self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -463,7 +428,7 @@ async def _resume_initial(
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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -473,45 +438,42 @@ async def _resume_initial(
else:
_json = self._serialize.body(resume_job_params, "ResumeJobParams")
- request = build_resume_request(
+ _request = build_resume_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resume_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _resume_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume"
- }
+ return deserialized # type: ignore
@overload
async def begin_resume(
@@ -533,14 +495,6 @@ async def begin_resume(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -548,7 +502,7 @@ async def begin_resume(
@overload
async def begin_resume(
- self, job_name: str, resume_job_params: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, job_name: str, resume_job_params: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Job]:
"""Resumes the specified job.
@@ -557,18 +511,10 @@ async def begin_resume(
:param job_name: Job identifier. Required.
:type job_name: str
:param resume_job_params: Resume rob comments. Required.
- :type resume_job_params: IO
+ :type resume_job_params: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -576,7 +522,7 @@ async def begin_resume(
@distributed_trace_async
async def begin_resume(
- self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO], **kwargs: Any
+ self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Job]:
"""Resumes the specified job.
@@ -584,20 +530,10 @@ async def begin_resume(
:param job_name: Job identifier. Required.
:type job_name: str
- :param resume_job_params: Resume rob comments. Is either a ResumeJobParams type or a IO type.
- Required.
- :type resume_job_params: ~azure.mgmt.recoveryservicessiterecovery.models.ResumeJobParams or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param resume_job_params: Resume rob comments. Is either a ResumeJobParams type or a IO[bytes]
+ type. Required.
+ :type resume_job_params: ~azure.mgmt.recoveryservicessiterecovery.models.ResumeJobParams or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -622,12 +558,13 @@ async def begin_resume(
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -637,22 +574,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resume.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume"
- }
+ return AsyncLROPoller[_models.Job](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _export_initial(
- self, job_query_parameter: Union[_models.JobQueryParameter, IO], **kwargs: Any
- ) -> Optional[_models.Job]:
- error_map = {
+ self, job_query_parameter: Union[_models.JobQueryParameter, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -665,7 +600,7 @@ async def _export_initial(
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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -675,44 +610,41 @@ async def _export_initial(
else:
_json = self._serialize.body(job_query_parameter, "JobQueryParameter")
- request = build_export_request(
- resource_name=self._config.resource_name,
+ _request = build_export_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._export_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _export_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export"
- }
+ return deserialized # type: ignore
@overload
async def begin_export(
@@ -727,14 +659,6 @@ async def begin_export(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -742,25 +666,17 @@ async def begin_export(
@overload
async def begin_export(
- self, job_query_parameter: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, job_query_parameter: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Job]:
"""Exports the details of the Azure Site Recovery jobs of the vault.
The operation to export the details of the Azure Site Recovery jobs of the vault.
:param job_query_parameter: job query filter. Required.
- :type job_query_parameter: IO
+ :type job_query_parameter: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -768,27 +684,16 @@ async def begin_export(
@distributed_trace_async
async def begin_export(
- self, job_query_parameter: Union[_models.JobQueryParameter, IO], **kwargs: Any
+ self, job_query_parameter: Union[_models.JobQueryParameter, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Job]:
"""Exports the details of the Azure Site Recovery jobs of the vault.
The operation to export the details of the Azure Site Recovery jobs of the vault.
- :param job_query_parameter: job query filter. Is either a JobQueryParameter type or a IO type.
- Required.
+ :param job_query_parameter: job query filter. Is either a JobQueryParameter type or a IO[bytes]
+ type. Required.
:type job_query_parameter: ~azure.mgmt.recoveryservicessiterecovery.models.JobQueryParameter or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -812,12 +717,13 @@ async def begin_export(
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -827,14 +733,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_export.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export"
- }
+ return AsyncLROPoller[_models.Job](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_logical_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_logical_networks_operations.py
index 562a4ef04af2..7c0f75e50245 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_logical_networks_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_logical_networks_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,20 +19,22 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_logical_networks_operations import (
build_get_request,
build_list_by_replication_fabrics_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -64,7 +66,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
:param fabric_name: Server Id. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either LogicalNetwork or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.LogicalNetwork]
@@ -76,7 +77,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.LogicalNetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -87,18 +88,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -110,13 +109,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("LogicalNetworkCollection", pipeline_response)
@@ -126,11 +124,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -142,10 +140,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any) -> _models.LogicalNetwork:
"""Gets a logical network with specified server id and logical network name.
@@ -156,12 +150,11 @@ async def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any)
:type fabric_name: str
:param logical_network_name: Logical network name. Required.
:type logical_network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: LogicalNetwork or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.LogicalNetwork
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -175,23 +168,21 @@ async def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any)
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.LogicalNetwork] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
logical_network_name=logical_network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -200,13 +191,9 @@ async def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any)
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("LogicalNetwork", pipeline_response)
+ deserialized = self._deserialize("LogicalNetwork", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_migration_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_migration_items_operations.py
index e1ece84fdf8a..8e5e39116674 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_migration_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_migration_items_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_migration_items_operations import (
build_create_request,
build_delete_request,
@@ -46,6 +47,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -70,7 +75,7 @@ def __init__(self, *args, **kwargs) -> None:
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self,
fabric_name: str,
protection_container_name: str,
@@ -93,7 +98,6 @@ def list_by_replication_protection_containers(
:type take_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationItem or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem]
@@ -105,7 +109,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -116,22 +120,20 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
filter=filter,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -143,13 +145,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationItemCollection", pipeline_response)
@@ -159,11 +160,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -175,10 +176,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, protection_container_name: str, migration_item_name: str, **kwargs: Any
@@ -193,12 +190,11 @@ async def get(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: MigrationItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -212,24 +208,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -238,26 +232,22 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.EnableMigrationInput, IO],
+ input: Union[_models.EnableMigrationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -270,7 +260,7 @@ async def _create_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -280,47 +270,44 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "EnableMigrationInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -348,14 +335,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -369,7 +348,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -385,18 +364,10 @@ async def begin_create(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Enable migration input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -410,7 +381,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.EnableMigrationInput, IO],
+ input: Union[_models.EnableMigrationInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Enables migration.
@@ -423,20 +394,9 @@ async def begin_create(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Enable migration input. Is either a EnableMigrationInput type or a IO type.
- Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableMigrationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Enable migration input. Is either a EnableMigrationInput type or a IO[bytes]
+ type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableMigrationInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -465,12 +425,13 @@ async def begin_create(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -480,27 +441,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
delete_option: Optional[str] = None,
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -512,41 +471,44 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
delete_option=delete_option,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(
@@ -569,14 +531,6 @@ async def begin_delete(
:type migration_item_name: str
:param delete_option: The delete option. Default value is None.
:type delete_option: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -590,7 +544,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
@@ -601,11 +555,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -614,27 +569,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.UpdateMigrationItemInput, IO],
+ input: Union[_models.UpdateMigrationItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -647,7 +598,7 @@ async def _update_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -657,47 +608,44 @@ async def _update_initial(
else:
_json = self._serialize.body(input, "UpdateMigrationItemInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -725,14 +673,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -746,7 +686,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -762,18 +702,10 @@ async def begin_update(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Update migration item input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -787,7 +719,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.UpdateMigrationItemInput, IO],
+ input: Union[_models.UpdateMigrationItemInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Updates migration item.
@@ -800,20 +732,10 @@ async def begin_update(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Update migration item input. Is either a UpdateMigrationItemInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMigrationItemInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update migration item input. Is either a UpdateMigrationItemInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMigrationItemInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -842,12 +764,13 @@ async def begin_update(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -857,27 +780,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _migrate_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: Union[_models.MigrateInput, IO],
+ migrate_input: Union[_models.MigrateInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -890,7 +811,7 @@ async def _migrate_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -900,47 +821,44 @@ async def _migrate_initial(
else:
_json = self._serialize.body(migrate_input, "MigrateInput")
- request = build_migrate_request(
+ _request = build_migrate_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._migrate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _migrate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate"
- }
+ return deserialized # type: ignore
@overload
async def begin_migrate(
@@ -968,14 +886,6 @@ async def begin_migrate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -989,7 +899,7 @@ async def begin_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: IO,
+ migrate_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1005,18 +915,10 @@ async def begin_migrate(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param migrate_input: Migrate input. Required.
- :type migrate_input: IO
+ :type migrate_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1030,7 +932,7 @@ async def begin_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: Union[_models.MigrateInput, IO],
+ migrate_input: Union[_models.MigrateInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Migrate item.
@@ -1043,19 +945,9 @@ async def begin_migrate(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param migrate_input: Migrate input. Is either a MigrateInput type or a IO type. Required.
- :type migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.MigrateInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param migrate_input: Migrate input. Is either a MigrateInput type or a IO[bytes] type.
+ Required.
+ :type migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.MigrateInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1084,12 +976,13 @@ async def begin_migrate(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1099,27 +992,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_migrate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _pause_replication_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: Union[_models.PauseReplicationInput, IO],
+ pause_replication_input: Union[_models.PauseReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1132,7 +1023,7 @@ async def _pause_replication_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1142,47 +1033,44 @@ async def _pause_replication_initial(
else:
_json = self._serialize.body(pause_replication_input, "PauseReplicationInput")
- request = build_pause_replication_request(
+ _request = build_pause_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._pause_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _pause_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication"
- }
+ return deserialized # type: ignore
@overload
async def begin_pause_replication(
@@ -1211,14 +1099,6 @@ async def begin_pause_replication(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1232,7 +1112,7 @@ async def begin_pause_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: IO,
+ pause_replication_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1248,18 +1128,10 @@ async def begin_pause_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param pause_replication_input: Pause replication input. Required.
- :type pause_replication_input: IO
+ :type pause_replication_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1273,7 +1145,7 @@ async def begin_pause_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: Union[_models.PauseReplicationInput, IO],
+ pause_replication_input: Union[_models.PauseReplicationInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Pause replication.
@@ -1287,20 +1159,9 @@ async def begin_pause_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param pause_replication_input: Pause replication input. Is either a PauseReplicationInput type
- or a IO type. Required.
+ or a IO[bytes] type. Required.
:type pause_replication_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.PauseReplicationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.PauseReplicationInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1329,12 +1190,13 @@ async def begin_pause_replication(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1344,27 +1206,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_pause_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _resume_replication_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: Union[_models.ResumeReplicationInput, IO],
+ resume_replication_input: Union[_models.ResumeReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1377,7 +1237,7 @@ async def _resume_replication_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1387,47 +1247,44 @@ async def _resume_replication_initial(
else:
_json = self._serialize.body(resume_replication_input, "ResumeReplicationInput")
- request = build_resume_replication_request(
+ _request = build_resume_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resume_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _resume_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication"
- }
+ return deserialized # type: ignore
@overload
async def begin_resume_replication(
@@ -1456,14 +1313,6 @@ async def begin_resume_replication(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1477,7 +1326,7 @@ async def begin_resume_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: IO,
+ resume_replication_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1493,18 +1342,10 @@ async def begin_resume_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param resume_replication_input: Resume replication input. Required.
- :type resume_replication_input: IO
+ :type resume_replication_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1518,7 +1359,7 @@ async def begin_resume_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: Union[_models.ResumeReplicationInput, IO],
+ resume_replication_input: Union[_models.ResumeReplicationInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Resume replication.
@@ -1532,20 +1373,9 @@ async def begin_resume_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param resume_replication_input: Resume replication input. Is either a ResumeReplicationInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type resume_replication_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.ResumeReplicationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.ResumeReplicationInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1574,12 +1404,13 @@ async def begin_resume_replication(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1589,27 +1420,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resume_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _resync_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.ResyncInput, IO],
+ input: Union[_models.ResyncInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1622,7 +1451,7 @@ async def _resync_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1632,47 +1461,44 @@ async def _resync_initial(
else:
_json = self._serialize.body(input, "ResyncInput")
- request = build_resync_request(
+ _request = build_resync_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resync_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _resync_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync"
- }
+ return deserialized # type: ignore
@overload
async def begin_resync(
@@ -1700,14 +1526,6 @@ async def begin_resync(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1721,7 +1539,7 @@ async def begin_resync(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1737,18 +1555,10 @@ async def begin_resync(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Resync input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1762,7 +1572,7 @@ async def begin_resync(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.ResyncInput, IO],
+ input: Union[_models.ResyncInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Resynchronizes replication.
@@ -1775,19 +1585,8 @@ async def begin_resync(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Resync input. Is either a ResyncInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.ResyncInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Resync input. Is either a ResyncInput type or a IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.ResyncInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1816,12 +1615,13 @@ async def begin_resync(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1831,27 +1631,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resync.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_migrate_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: Union[_models.TestMigrateInput, IO],
+ test_migrate_input: Union[_models.TestMigrateInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1864,7 +1662,7 @@ async def _test_migrate_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1874,47 +1672,44 @@ async def _test_migrate_initial(
else:
_json = self._serialize.body(test_migrate_input, "TestMigrateInput")
- request = build_test_migrate_request(
+ _request = build_test_migrate_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_migrate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _test_migrate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_migrate(
@@ -1942,14 +1737,6 @@ async def begin_test_migrate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1963,7 +1750,7 @@ async def begin_test_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: IO,
+ test_migrate_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1979,18 +1766,10 @@ async def begin_test_migrate(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_input: Test migrate input. Required.
- :type test_migrate_input: IO
+ :type test_migrate_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2004,7 +1783,7 @@ async def begin_test_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: Union[_models.TestMigrateInput, IO],
+ test_migrate_input: Union[_models.TestMigrateInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Test migrate item.
@@ -2017,21 +1796,10 @@ async def begin_test_migrate(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param test_migrate_input: Test migrate input. Is either a TestMigrateInput type or a IO type.
- Required.
+ :param test_migrate_input: Test migrate input. Is either a TestMigrateInput type or a IO[bytes]
+ type. Required.
:type test_migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2060,12 +1828,13 @@ async def begin_test_migrate(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2075,27 +1844,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_migrate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_migrate_cleanup_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO],
+ test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2108,7 +1875,7 @@ async def _test_migrate_cleanup_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2118,47 +1885,44 @@ async def _test_migrate_cleanup_initial(
else:
_json = self._serialize.body(test_migrate_cleanup_input, "TestMigrateCleanupInput")
- request = build_test_migrate_cleanup_request(
+ _request = build_test_migrate_cleanup_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_migrate_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_migrate_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_migrate_cleanup(
@@ -2187,14 +1951,6 @@ async def begin_test_migrate_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2208,7 +1964,7 @@ async def begin_test_migrate_cleanup(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: IO,
+ test_migrate_cleanup_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2224,18 +1980,10 @@ async def begin_test_migrate_cleanup(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_cleanup_input: Test migrate cleanup input. Required.
- :type test_migrate_cleanup_input: IO
+ :type test_migrate_cleanup_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2249,7 +1997,7 @@ async def begin_test_migrate_cleanup(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO],
+ test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.MigrationItem]:
"""Test migrate cleanup.
@@ -2263,20 +2011,9 @@ async def begin_test_migrate_cleanup(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_cleanup_input: Test migrate cleanup input. Is either a
- TestMigrateCleanupInput type or a IO type. Required.
+ TestMigrateCleanupInput type or a IO[bytes] type. Required.
:type test_migrate_cleanup_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateCleanupInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateCleanupInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2305,12 +2042,13 @@ async def begin_test_migrate_cleanup(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2320,17 +2058,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_migrate_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup"
- }
+ return AsyncLROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(
@@ -2350,7 +2086,6 @@ def list(
:type take_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationItem or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem]
@@ -2362,7 +2097,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2373,20 +2108,18 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -2398,13 +2131,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationItemCollection", pipeline_response)
@@ -2414,11 +2146,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -2429,7 +2161,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_network_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_network_mappings_operations.py
index 471670783c5c..8aca689373ee 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_network_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_network_mappings_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_network_mappings_operations import (
build_create_request,
build_delete_request,
@@ -40,6 +40,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -75,7 +79,6 @@ def list_by_replication_networks(
:type fabric_name: str
:param network_name: Primary network name. Required.
:type network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either NetworkMapping or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping]
@@ -87,7 +90,7 @@ def list_by_replication_networks(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -98,19 +101,17 @@ def list_by_replication_networks(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_networks_request(
+ _request = build_list_by_replication_networks_request(
fabric_name=fabric_name,
network_name=network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_networks.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -122,13 +123,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkMappingCollection", pipeline_response)
@@ -138,11 +138,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -154,10 +154,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_networks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, network_name: str, network_mapping_name: str, **kwargs: Any
@@ -172,12 +168,11 @@ async def get(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: NetworkMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -191,24 +186,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -217,26 +210,22 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.CreateNetworkMappingInput, IO],
+ input: Union[_models.CreateNetworkMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.NetworkMapping]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -249,7 +238,7 @@ async def _create_initial(
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[Optional[_models.NetworkMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -259,47 +248,44 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "CreateNetworkMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -327,14 +313,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -348,7 +326,7 @@ async def begin_create(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -364,18 +342,10 @@ async def begin_create(
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
:param input: Create network mapping input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -389,7 +359,7 @@ async def begin_create(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.CreateNetworkMappingInput, IO],
+ input: Union[_models.CreateNetworkMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.NetworkMapping]:
"""Creates network mapping.
@@ -402,20 +372,10 @@ async def begin_create(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :param input: Create network mapping input. Is either a CreateNetworkMappingInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateNetworkMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Create network mapping input. Is either a CreateNetworkMappingInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateNetworkMappingInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -444,12 +404,13 @@ async def begin_create(
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("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -459,22 +420,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.NetworkMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return AsyncLROPoller[_models.NetworkMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self, fabric_name: str, network_name: str, network_mapping_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -486,40 +445,43 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(
@@ -535,14 +497,6 @@ async def begin_delete(
:type network_name: str
:param network_mapping_name: ARM Resource Name for network mapping. Required.
:type network_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -556,7 +510,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
@@ -566,11 +520,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -579,27 +534,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
self,
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.UpdateNetworkMappingInput, IO],
+ input: Union[_models.UpdateNetworkMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.NetworkMapping]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -612,7 +563,7 @@ async def _update_initial(
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[Optional[_models.NetworkMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -622,47 +573,44 @@ async def _update_initial(
else:
_json = self._serialize.body(input, "UpdateNetworkMappingInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -690,14 +638,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -711,7 +651,7 @@ async def begin_update(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -727,18 +667,10 @@ async def begin_update(
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
:param input: Update network mapping input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -752,7 +684,7 @@ async def begin_update(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.UpdateNetworkMappingInput, IO],
+ input: Union[_models.UpdateNetworkMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.NetworkMapping]:
"""Updates network mapping.
@@ -765,20 +697,10 @@ async def begin_update(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :param input: Update network mapping input. Is either a UpdateNetworkMappingInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateNetworkMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update network mapping input. Is either a UpdateNetworkMappingInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateNetworkMappingInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -807,12 +729,13 @@ async def begin_update(
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("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -822,17 +745,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.NetworkMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return AsyncLROPoller[_models.NetworkMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.NetworkMapping"]:
@@ -840,7 +761,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.NetworkMapping"]:
Lists all ASR network mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either NetworkMapping or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping]
@@ -852,7 +772,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.NetworkMapping"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -863,17 +783,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.NetworkMapping"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -885,13 +803,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkMappingCollection", pipeline_response)
@@ -901,11 +818,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -916,7 +833,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_networks_operations.py
index 23b52d425241..b29cf5b29f45 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_networks_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_networks_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,21 +19,23 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_networks_operations import (
build_get_request,
build_list_by_replication_fabrics_request,
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -65,7 +67,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Network or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Network]
@@ -77,7 +78,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -88,18 +89,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -111,13 +110,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkCollection", pipeline_response)
@@ -127,11 +125,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -143,10 +141,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _models.Network:
"""Gets a network with specified server id and network name.
@@ -157,12 +151,11 @@ async def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _mode
:type fabric_name: str
:param network_name: Primary network name. Required.
:type network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Network or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Network
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -176,23 +169,21 @@ async def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _mode
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Network] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
network_name=network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -201,16 +192,12 @@ async def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _mode
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Network", pipeline_response)
+ deserialized = self._deserialize("Network", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.Network"]:
@@ -218,7 +205,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Network"]:
Lists the networks available in a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Network or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Network]
@@ -230,7 +216,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Network"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -241,17 +227,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Network"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -263,13 +247,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkCollection", pipeline_response)
@@ -279,11 +262,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -294,7 +277,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_policies_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_policies_operations.py
index 32c40c019ee2..b4c00fa5f265 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_policies_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_policies_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_policies_operations import (
build_create_request,
build_delete_request,
@@ -39,6 +39,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -68,7 +72,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Policy"]:
Lists the replication policies for a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Policy or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
@@ -80,7 +83,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Policy"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.PolicyCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -91,17 +94,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Policy"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -113,13 +114,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("PolicyCollection", pipeline_response)
@@ -129,11 +129,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -145,10 +145,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies"
- }
-
@distributed_trace_async
async def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
"""Gets the requested policy.
@@ -157,12 +153,11 @@ async def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Policy or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Policy
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -176,22 +171,20 @@ async def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Policy] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -200,21 +193,17 @@ async def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
- self, policy_name: str, input: Union[_models.CreatePolicyInput, IO], **kwargs: Any
- ) -> Optional[_models.Policy]:
- error_map = {
+ self, policy_name: str, input: Union[_models.CreatePolicyInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -227,7 +216,7 @@ async def _create_initial(
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[Optional[_models.Policy]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -237,45 +226,42 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "CreatePolicyInput")
- request = build_create_request(
+ _request = build_create_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -297,14 +283,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -314,7 +292,7 @@ async def begin_create(
@overload
async def begin_create(
- self, policy_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, policy_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Policy]:
"""Creates the policy.
@@ -323,18 +301,10 @@ async def begin_create(
:param policy_name: Replication policy name. Required.
:type policy_name: str
:param input: Create policy input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -344,7 +314,7 @@ async def begin_create(
@distributed_trace_async
async def begin_create(
- self, policy_name: str, input: Union[_models.CreatePolicyInput, IO], **kwargs: Any
+ self, policy_name: str, input: Union[_models.CreatePolicyInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Policy]:
"""Creates the policy.
@@ -352,19 +322,9 @@ async def begin_create(
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :param input: Create policy input. Is either a CreatePolicyInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreatePolicyInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Create policy input. Is either a CreatePolicyInput type or a IO[bytes] type.
+ Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreatePolicyInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -391,12 +351,13 @@ async def begin_create(
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("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -406,22 +367,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Policy].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return AsyncLROPoller[_models.Policy](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, policy_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _delete_initial(self, policy_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -433,38 +390,41 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(self, policy_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -474,14 +434,6 @@ async def begin_delete(self, policy_name: str, **kwargs: Any) -> AsyncLROPoller[
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -495,7 +447,7 @@ async def begin_delete(self, policy_name: str, **kwargs: Any) -> AsyncLROPoller[
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( # type: ignore
+ raw_result = await self._delete_initial(
policy_name=policy_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -503,11 +455,12 @@ async def begin_delete(self, policy_name: str, **kwargs: Any) -> AsyncLROPoller[
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -516,22 +469,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
- self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO], **kwargs: Any
- ) -> Optional[_models.Policy]:
- error_map = {
+ self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -544,7 +493,7 @@ async def _update_initial(
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[Optional[_models.Policy]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -554,45 +503,42 @@ async def _update_initial(
else:
_json = self._serialize.body(input, "UpdatePolicyInput")
- request = build_update_request(
+ _request = build_update_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -614,14 +560,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -631,7 +569,7 @@ async def begin_update(
@overload
async def begin_update(
- self, policy_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, policy_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.Policy]:
"""Updates the policy.
@@ -640,18 +578,10 @@ async def begin_update(
:param policy_name: Policy Id. Required.
:type policy_name: str
:param input: Update Policy Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -661,7 +591,7 @@ async def begin_update(
@distributed_trace_async
async def begin_update(
- self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO], **kwargs: Any
+ self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.Policy]:
"""Updates the policy.
@@ -669,19 +599,9 @@ async def begin_update(
:param policy_name: Policy Id. Required.
:type policy_name: str
- :param input: Update Policy Input. Is either a UpdatePolicyInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdatePolicyInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update Policy Input. Is either a UpdatePolicyInput type or a IO[bytes] type.
+ Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdatePolicyInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either Policy or the result of
cls(response)
:rtype:
@@ -708,12 +628,13 @@ async def begin_update(
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("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -723,14 +644,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.Policy].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return AsyncLROPoller[_models.Policy](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protectable_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protectable_items_operations.py
index ecd884c38447..b941ef22b4b3 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protectable_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protectable_items_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,20 +19,22 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_protectable_items_operations import (
build_get_request,
build_list_by_replication_protection_containers_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -57,7 +59,7 @@ def __init__(self, *args, **kwargs) -> None:
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self,
fabric_name: str,
protection_container_name: str,
@@ -80,7 +82,6 @@ def list_by_replication_protection_containers(
:type take: str
:param skip_token: skipToken OData query parameter. Default value is None.
: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 ProtectableItem or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectableItem]
@@ -92,7 +93,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectableItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -103,22 +104,20 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
take=take,
skip_token=skip_token,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -130,13 +129,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectableItemCollection", pipeline_response)
@@ -146,11 +144,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -162,10 +160,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, protection_container_name: str, protectable_item_name: str, **kwargs: Any
@@ -180,12 +174,11 @@ async def get(
:type protection_container_name: str
:param protectable_item_name: Protectable item name. Required.
:type protectable_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectableItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectableItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -199,24 +192,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectableItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
protectable_item_name=protectable_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -225,13 +216,9 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectableItem", pipeline_response)
+ deserialized = self._deserialize("ProtectableItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py
index 1307b0891636..ade45b770917 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_protected_items_operations import (
build_add_disks_request,
build_apply_recovery_point_request,
@@ -56,6 +57,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -80,9 +85,10 @@ def __init__(self, *args, **kwargs) -> None:
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self, fabric_name: str, protection_container_name: str, **kwargs: Any
) -> AsyncIterable["_models.ReplicationProtectedItem"]:
+ # pylint: disable=line-too-long
"""Gets the list of Replication protected items.
Gets the list of ASR replication protected items in the protection container.
@@ -91,7 +97,6 @@ def list_by_replication_protection_containers(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -104,7 +109,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -115,19 +120,17 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -139,13 +142,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectedItemCollection", pipeline_response)
@@ -155,11 +157,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -171,10 +173,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
@@ -189,12 +187,11 @@ async def get(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectedItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -208,24 +205,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -234,26 +229,22 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: Union[_models.EnableProtectionInput, IO],
+ input: Union[_models.EnableProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -266,7 +257,7 @@ async def _create_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -276,47 +267,44 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "EnableProtectionInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -344,14 +332,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -365,7 +345,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -381,18 +361,10 @@ async def begin_create(
:param replicated_protected_item_name: A name for the replication protected item. Required.
:type replicated_protected_item_name: str
:param input: Enable Protection Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -406,7 +378,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: Union[_models.EnableProtectionInput, IO],
+ input: Union[_models.EnableProtectionInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Enables protection.
@@ -419,20 +391,9 @@ async def begin_create(
:type protection_container_name: str
:param replicated_protected_item_name: A name for the replication protected item. Required.
:type replicated_protected_item_name: str
- :param input: Enable Protection Input. Is either a EnableProtectionInput type or a IO type.
- Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Enable Protection Input. Is either a EnableProtectionInput type or a IO[bytes]
+ type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableProtectionInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -461,12 +422,13 @@ async def begin_create(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -476,22 +438,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _purge_initial( # pylint: disable=inconsistent-return-statements
+ async def _purge_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -503,40 +463,43 @@ async def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_purge(
@@ -554,14 +517,6 @@ async def begin_purge(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -575,7 +530,7 @@ async def begin_purge(
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._purge_initial( # type: ignore
+ raw_result = await self._purge_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
@@ -585,11 +540,12 @@ async def begin_purge(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -598,27 +554,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO],
+ update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -631,7 +583,7 @@ async def _update_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -641,47 +593,44 @@ async def _update_initial(
else:
_json = self._serialize.body(update_protection_input, "UpdateReplicationProtectedItemInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -710,14 +659,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -731,7 +672,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: IO,
+ update_protection_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -747,18 +688,10 @@ async def begin_update(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param update_protection_input: Update protection input. Required.
- :type update_protection_input: IO
+ :type update_protection_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -772,7 +705,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO],
+ update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Updates the replication protected item settings.
@@ -786,20 +719,10 @@ async def begin_update(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param update_protection_input: Update protection input. Is either a
- UpdateReplicationProtectedItemInput type or a IO type. Required.
+ UpdateReplicationProtectedItemInput type or a IO[bytes] type. Required.
:type update_protection_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateReplicationProtectedItemInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateReplicationProtectedItemInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -828,12 +751,13 @@ async def begin_update(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -843,27 +767,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _add_disks_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: Union[_models.AddDisksInput, IO],
+ add_disks_input: Union[_models.AddDisksInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -876,7 +798,7 @@ async def _add_disks_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -886,47 +808,44 @@ async def _add_disks_initial(
else:
_json = self._serialize.body(add_disks_input, "AddDisksInput")
- request = build_add_disks_request(
+ _request = build_add_disks_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._add_disks_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _add_disks_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks"
- }
+ return deserialized # type: ignore
@overload
async def begin_add_disks(
@@ -954,14 +873,6 @@ async def begin_add_disks(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -975,7 +886,7 @@ async def begin_add_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: IO,
+ add_disks_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -991,18 +902,10 @@ async def begin_add_disks(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param add_disks_input: Add disks input. Required.
- :type add_disks_input: IO
+ :type add_disks_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1016,7 +919,7 @@ async def begin_add_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: Union[_models.AddDisksInput, IO],
+ add_disks_input: Union[_models.AddDisksInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Add disk(s) for protection.
@@ -1029,19 +932,10 @@ async def begin_add_disks(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param add_disks_input: Add disks input. Is either a AddDisksInput type or a IO type. Required.
- :type add_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param add_disks_input: Add disks input. Is either a AddDisksInput type or a IO[bytes] type.
+ Required.
+ :type add_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1070,12 +964,13 @@ async def begin_add_disks(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1085,27 +980,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_add_disks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _apply_recovery_point_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO],
+ apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1118,7 +1011,7 @@ async def _apply_recovery_point_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1128,47 +1021,44 @@ async def _apply_recovery_point_initial(
else:
_json = self._serialize.body(apply_recovery_point_input, "ApplyRecoveryPointInput")
- request = build_apply_recovery_point_request(
+ _request = build_apply_recovery_point_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._apply_recovery_point_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _apply_recovery_point_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint"
- }
+ return deserialized # type: ignore
@overload
async def begin_apply_recovery_point(
@@ -1197,14 +1087,6 @@ async def begin_apply_recovery_point(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1218,7 +1100,7 @@ async def begin_apply_recovery_point(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: IO,
+ apply_recovery_point_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1234,18 +1116,10 @@ async def begin_apply_recovery_point(
:param replicated_protected_item_name: The replicated protected item name. Required.
:type replicated_protected_item_name: str
:param apply_recovery_point_input: The ApplyRecoveryPointInput. Required.
- :type apply_recovery_point_input: IO
+ :type apply_recovery_point_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1259,7 +1133,7 @@ async def begin_apply_recovery_point(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO],
+ apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Change or apply recovery point.
@@ -1273,20 +1147,9 @@ async def begin_apply_recovery_point(
:param replicated_protected_item_name: The replicated protected item name. Required.
:type replicated_protected_item_name: str
:param apply_recovery_point_input: The ApplyRecoveryPointInput. Is either a
- ApplyRecoveryPointInput type or a IO type. Required.
+ ApplyRecoveryPointInput type or a IO[bytes] type. Required.
:type apply_recovery_point_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1315,12 +1178,13 @@ async def begin_apply_recovery_point(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1330,22 +1194,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_apply_recovery_point.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _failover_cancel_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1357,46 +1219,43 @@ async def _failover_cancel_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_cancel_request(
+ _request = build_failover_cancel_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _failover_cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_failover_cancel(
@@ -1412,14 +1271,6 @@ async def begin_failover_cancel(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1445,12 +1296,13 @@ async def begin_failover_cancel(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1460,22 +1312,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _failover_commit_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1487,46 +1337,43 @@ async def _failover_commit_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_commit_request(
+ _request = build_failover_commit_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_commit_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _failover_commit_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_failover_commit(
@@ -1542,14 +1389,6 @@ async def begin_failover_commit(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1575,12 +1414,13 @@ async def begin_failover_commit(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1590,27 +1430,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_commit.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _planned_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.PlannedFailoverInput, IO],
+ failover_input: Union[_models.PlannedFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1623,7 +1461,7 @@ async def _planned_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1633,47 +1471,44 @@ async def _planned_failover_initial(
else:
_json = self._serialize.body(failover_input, "PlannedFailoverInput")
- request = build_planned_failover_request(
+ _request = build_planned_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._planned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _planned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_planned_failover(
@@ -1701,14 +1536,6 @@ async def begin_planned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1722,7 +1549,7 @@ async def begin_planned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: IO,
+ failover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1738,18 +1565,10 @@ async def begin_planned_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param failover_input: Planned failover input. Required.
- :type failover_input: IO
+ :type failover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1763,7 +1582,7 @@ async def begin_planned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.PlannedFailoverInput, IO],
+ failover_input: Union[_models.PlannedFailoverInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Execute planned failover.
@@ -1776,21 +1595,10 @@ async def begin_planned_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param failover_input: Planned failover input. Is either a PlannedFailoverInput type or a IO
- type. Required.
+ :param failover_input: Planned failover input. Is either a PlannedFailoverInput type or a
+ IO[bytes] type. Required.
:type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.PlannedFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -1819,12 +1627,13 @@ async def begin_planned_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1834,27 +1643,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_planned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: Union[_models.DisableProtectionInput, IO],
+ disable_protection_input: Union[_models.DisableProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1867,7 +1674,7 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
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[None] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1877,41 +1684,44 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
else:
_json = self._serialize.body(disable_protection_input, "DisableProtectionInput")
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove"
- }
+ return deserialized # type: ignore
@overload
async def begin_delete(
@@ -1941,14 +1751,6 @@ async def begin_delete(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1960,7 +1762,7 @@ async def begin_delete(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: IO,
+ disable_protection_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1977,18 +1779,10 @@ async def begin_delete(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param disable_protection_input: Disable protection input. Required.
- :type disable_protection_input: IO
+ :type disable_protection_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -2000,7 +1794,7 @@ async def begin_delete(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: Union[_models.DisableProtectionInput, IO],
+ disable_protection_input: Union[_models.DisableProtectionInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[None]:
"""Disables protection.
@@ -2015,20 +1809,9 @@ async def begin_delete(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param disable_protection_input: Disable protection input. Is either a DisableProtectionInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type disable_protection_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.DisableProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.DisableProtectionInput or IO[bytes]
: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:
@@ -2043,7 +1826,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
@@ -2055,11 +1838,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -2068,27 +1852,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _remove_disks_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: Union[_models.RemoveDisksInput, IO],
+ remove_disks_input: Union[_models.RemoveDisksInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2101,7 +1881,7 @@ async def _remove_disks_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2111,47 +1891,44 @@ async def _remove_disks_initial(
else:
_json = self._serialize.body(remove_disks_input, "RemoveDisksInput")
- request = build_remove_disks_request(
+ _request = build_remove_disks_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._remove_disks_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _remove_disks_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks"
- }
+ return deserialized # type: ignore
@overload
async def begin_remove_disks(
@@ -2179,14 +1956,6 @@ async def begin_remove_disks(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2200,7 +1969,7 @@ async def begin_remove_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: IO,
+ remove_disks_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2216,18 +1985,10 @@ async def begin_remove_disks(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param remove_disks_input: Remove disks input. Required.
- :type remove_disks_input: IO
+ :type remove_disks_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2241,7 +2002,7 @@ async def begin_remove_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: Union[_models.RemoveDisksInput, IO],
+ remove_disks_input: Union[_models.RemoveDisksInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Removes disk(s).
@@ -2254,21 +2015,10 @@ async def begin_remove_disks(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param remove_disks_input: Remove disks input. Is either a RemoveDisksInput type or a IO type.
- Required.
+ :param remove_disks_input: Remove disks input. Is either a RemoveDisksInput type or a IO[bytes]
+ type. Required.
:type remove_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.RemoveDisksInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2297,12 +2047,13 @@ async def begin_remove_disks(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2312,22 +2063,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_remove_disks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _repair_replication_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2339,46 +2088,43 @@ async def _repair_replication_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_repair_replication_request(
+ _request = build_repair_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._repair_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _repair_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_repair_replication(
@@ -2395,14 +2141,6 @@ async def begin_repair_replication(
:type protection_container_name: str
:param replicated_protected_item_name: The name of the replication protected item. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2428,12 +2166,13 @@ async def begin_repair_replication(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2443,27 +2182,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_repair_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _reprotect_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: Union[_models.ReverseReplicationInput, IO],
+ reprotect_input: Union[_models.ReverseReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2476,7 +2213,7 @@ async def _reprotect_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2486,47 +2223,44 @@ async def _reprotect_initial(
else:
_json = self._serialize.body(reprotect_input, "ReverseReplicationInput")
- request = build_reprotect_request(
+ _request = build_reprotect_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._reprotect_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _reprotect_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect"
- }
+ return deserialized # type: ignore
@overload
async def begin_reprotect(
@@ -2539,7 +2273,7 @@ async def begin_reprotect(
content_type: str = "application/json",
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -2554,14 +2288,6 @@ async def begin_reprotect(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2575,12 +2301,12 @@ async def begin_reprotect(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: IO,
+ reprotect_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -2591,18 +2317,10 @@ async def begin_reprotect(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param reprotect_input: Reverse replication input. Required.
- :type reprotect_input: IO
+ :type reprotect_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2616,10 +2334,10 @@ async def begin_reprotect(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: Union[_models.ReverseReplicationInput, IO],
+ reprotect_input: Union[_models.ReverseReplicationInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -2630,20 +2348,9 @@ async def begin_reprotect(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param reprotect_input: Reverse replication input. Is either a ReverseReplicationInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type reprotect_input: ~azure.mgmt.recoveryservicessiterecovery.models.ReverseReplicationInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2672,12 +2379,13 @@ async def begin_reprotect(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2687,27 +2395,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reprotect.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _resolve_health_errors_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: Union[_models.ResolveHealthInput, IO],
+ resolve_health_input: Union[_models.ResolveHealthInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2720,7 +2426,7 @@ async def _resolve_health_errors_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2730,47 +2436,44 @@ async def _resolve_health_errors_initial(
else:
_json = self._serialize.body(resolve_health_input, "ResolveHealthInput")
- request = build_resolve_health_errors_request(
+ _request = build_resolve_health_errors_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resolve_health_errors_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _resolve_health_errors_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors"
- }
+ return deserialized # type: ignore
@overload
async def begin_resolve_health_errors(
@@ -2798,14 +2501,6 @@ async def begin_resolve_health_errors(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2819,7 +2514,7 @@ async def begin_resolve_health_errors(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: IO,
+ resolve_health_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2835,18 +2530,10 @@ async def begin_resolve_health_errors(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param resolve_health_input: Health issue input object. Required.
- :type resolve_health_input: IO
+ :type resolve_health_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2860,7 +2547,7 @@ async def begin_resolve_health_errors(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: Union[_models.ResolveHealthInput, IO],
+ resolve_health_input: Union[_models.ResolveHealthInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Resolve health errors.
@@ -2874,20 +2561,9 @@ async def begin_resolve_health_errors(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param resolve_health_input: Health issue input object. Is either a ResolveHealthInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type resolve_health_input: ~azure.mgmt.recoveryservicessiterecovery.models.ResolveHealthInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -2916,12 +2592,13 @@ async def begin_resolve_health_errors(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2931,27 +2608,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resolve_health_errors.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _switch_provider_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: Union[_models.SwitchProviderInput, IO],
+ switch_provider_input: Union[_models.SwitchProviderInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2964,7 +2639,7 @@ async def _switch_provider_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2974,47 +2649,44 @@ async def _switch_provider_initial(
else:
_json = self._serialize.body(switch_provider_input, "SwitchProviderInput")
- request = build_switch_provider_request(
+ _request = build_switch_provider_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._switch_provider_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _switch_provider_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider"
- }
+ return deserialized # type: ignore
@overload
async def begin_switch_provider(
@@ -3043,14 +2715,6 @@ async def begin_switch_provider(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3064,7 +2728,7 @@ async def begin_switch_provider(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: IO,
+ switch_provider_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3080,18 +2744,10 @@ async def begin_switch_provider(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param switch_provider_input: Switch provider input. Required.
- :type switch_provider_input: IO
+ :type switch_provider_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3105,7 +2761,7 @@ async def begin_switch_provider(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: Union[_models.SwitchProviderInput, IO],
+ switch_provider_input: Union[_models.SwitchProviderInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Execute switch provider.
@@ -3119,20 +2775,9 @@ async def begin_switch_provider(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param switch_provider_input: Switch provider input. Is either a SwitchProviderInput type or a
- IO type. Required.
+ IO[bytes] type. Required.
:type switch_provider_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProviderInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProviderInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3161,12 +2806,13 @@ async def begin_switch_provider(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3179,27 +2825,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_switch_provider.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: Union[_models.TestFailoverInput, IO],
+ testfailover_input: Union[_models.TestFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3212,7 +2856,7 @@ async def _test_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3222,47 +2866,44 @@ async def _test_failover_initial(
else:
_json = self._serialize.body(testfailover_input, "TestFailoverInput")
- request = build_test_failover_request(
+ _request = build_test_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_failover(
@@ -3290,14 +2931,6 @@ async def begin_test_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3311,7 +2944,7 @@ async def begin_test_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: IO,
+ testfailover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3327,18 +2960,10 @@ async def begin_test_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param testfailover_input: Test failover input. Required.
- :type testfailover_input: IO
+ :type testfailover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3352,7 +2977,7 @@ async def begin_test_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: Union[_models.TestFailoverInput, IO],
+ testfailover_input: Union[_models.TestFailoverInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Execute test failover.
@@ -3365,21 +2990,10 @@ async def begin_test_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param testfailover_input: Test failover input. Is either a TestFailoverInput type or a IO
- type. Required.
+ :param testfailover_input: Test failover input. Is either a TestFailoverInput type or a
+ IO[bytes] type. Required.
:type testfailover_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3408,12 +3022,13 @@ async def begin_test_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3423,27 +3038,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_failover_cleanup_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: Union[_models.TestFailoverCleanupInput, IO],
+ cleanup_input: Union[_models.TestFailoverCleanupInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3456,7 +3069,7 @@ async def _test_failover_cleanup_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3466,47 +3079,44 @@ async def _test_failover_cleanup_initial(
else:
_json = self._serialize.body(cleanup_input, "TestFailoverCleanupInput")
- request = build_test_failover_cleanup_request(
+ _request = build_test_failover_cleanup_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _test_failover_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_failover_cleanup(
@@ -3534,14 +3144,6 @@ async def begin_test_failover_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3555,7 +3157,7 @@ async def begin_test_failover_cleanup(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: IO,
+ cleanup_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3571,18 +3173,10 @@ async def begin_test_failover_cleanup(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param cleanup_input: Test failover cleanup input. Required.
- :type cleanup_input: IO
+ :type cleanup_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3596,7 +3190,7 @@ async def begin_test_failover_cleanup(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: Union[_models.TestFailoverCleanupInput, IO],
+ cleanup_input: Union[_models.TestFailoverCleanupInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Execute test failover cleanup.
@@ -3610,20 +3204,9 @@ async def begin_test_failover_cleanup(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param cleanup_input: Test failover cleanup input. Is either a TestFailoverCleanupInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type cleanup_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestFailoverCleanupInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3652,12 +3235,13 @@ async def begin_test_failover_cleanup(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3667,27 +3251,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _unplanned_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.UnplannedFailoverInput, IO],
+ failover_input: Union[_models.UnplannedFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3700,7 +3282,7 @@ async def _unplanned_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3710,47 +3292,44 @@ async def _unplanned_failover_initial(
else:
_json = self._serialize.body(failover_input, "UnplannedFailoverInput")
- request = build_unplanned_failover_request(
+ _request = build_unplanned_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._unplanned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _unplanned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_unplanned_failover(
@@ -3778,14 +3357,6 @@ async def begin_unplanned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3799,7 +3370,7 @@ async def begin_unplanned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: IO,
+ failover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3815,18 +3386,10 @@ async def begin_unplanned_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param failover_input: Failover input. Required.
- :type failover_input: IO
+ :type failover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3840,7 +3403,7 @@ async def begin_unplanned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.UnplannedFailoverInput, IO],
+ failover_input: Union[_models.UnplannedFailoverInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Execute unplanned failover.
@@ -3853,21 +3416,10 @@ async def begin_unplanned_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param failover_input: Failover input. Is either a UnplannedFailoverInput type or a IO type.
- Required.
+ :param failover_input: Failover input. Is either a UnplannedFailoverInput type or a IO[bytes]
+ type. Required.
:type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.UnplannedFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -3896,12 +3448,13 @@ async def begin_unplanned_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3911,27 +3464,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_unplanned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _update_appliance_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO],
+ appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3944,7 +3495,7 @@ async def _update_appliance_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3954,47 +3505,44 @@ async def _update_appliance_initial(
else:
_json = self._serialize.body(appliance_update_input, "UpdateApplianceForReplicationProtectedItemInput")
- request = build_update_appliance_request(
+ _request = build_update_appliance_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_appliance_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_appliance_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateAppliance"
- }
+ return deserialized # type: ignore
@overload
async def begin_update_appliance(
@@ -4023,14 +3571,6 @@ async def begin_update_appliance(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4044,7 +3584,7 @@ async def begin_update_appliance(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: IO,
+ appliance_update_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4060,18 +3600,10 @@ async def begin_update_appliance(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param appliance_update_input: Appliance update protection input. Required.
- :type appliance_update_input: IO
+ :type appliance_update_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4085,7 +3617,7 @@ async def begin_update_appliance(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO],
+ appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Updates appliance for replication protected Item.
@@ -4099,21 +3631,10 @@ async def begin_update_appliance(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param appliance_update_input: Appliance update protection input. Is either a
- UpdateApplianceForReplicationProtectedItemInput type or a IO type. Required.
+ UpdateApplianceForReplicationProtectedItemInput type or a IO[bytes] type. Required.
:type appliance_update_input:
~azure.mgmt.recoveryservicessiterecovery.models.UpdateApplianceForReplicationProtectedItemInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4142,12 +3663,13 @@ async def begin_update_appliance(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4157,27 +3679,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update_appliance.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateAppliance"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _update_mobility_service_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO],
+ update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4190,7 +3710,7 @@ async def _update_mobility_service_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -4200,51 +3720,48 @@ async def _update_mobility_service_initial(
else:
_json = self._serialize.body(update_mobility_service_request, "UpdateMobilityServiceRequest")
- request = build_update_mobility_service_request(
+ _request = build_update_mobility_service_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_mobility_service_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
response_headers = {}
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
-
if response.status_code == 202:
response_headers["Location"] = self._deserialize("str", response.headers.get("Location"))
- if cls:
- return cls(pipeline_response, deserialized, response_headers)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
- return deserialized
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _update_mobility_service_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateMobilityService"
- }
+ return deserialized # type: ignore
@overload
async def begin_update_mobility_service(
@@ -4277,14 +3794,6 @@ async def begin_update_mobility_service(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4298,7 +3807,7 @@ async def begin_update_mobility_service(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: IO,
+ update_mobility_service_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4318,18 +3827,10 @@ async def begin_update_mobility_service(
:type replicated_protected_item_name: str
:param update_mobility_service_request: Request to update the mobility service on the protected
item. Required.
- :type update_mobility_service_request: IO
+ :type update_mobility_service_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4343,7 +3844,7 @@ async def begin_update_mobility_service(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO],
+ update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ReplicationProtectedItem]:
"""Update the mobility service on a protected item.
@@ -4360,20 +3861,9 @@ async def begin_update_mobility_service(
be updated. Required.
:type replicated_protected_item_name: str
:param update_mobility_service_request: Request to update the mobility service on the protected
- item. Is either a UpdateMobilityServiceRequest type or a IO type. Required.
+ item. Is either a UpdateMobilityServiceRequest type or a IO[bytes] type. Required.
:type update_mobility_service_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMobilityServiceRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMobilityServiceRequest or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ReplicationProtectedItem or the
result of cls(response)
:rtype:
@@ -4402,12 +3892,13 @@ async def begin_update_mobility_service(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4419,22 +3910,21 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update_mobility_service.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateMobilityService"
- }
+ return AsyncLROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(
self, skip_token: Optional[str] = None, filter: Optional[str] = None, **kwargs: Any
) -> AsyncIterable["_models.ReplicationProtectedItem"]:
+ # pylint: disable=line-too-long
"""Gets the list of replication protected items.
Gets the list of ASR replication protected items in the vault.
@@ -4444,7 +3934,6 @@ def list(
:type skip_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4457,7 +3946,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4468,19 +3957,17 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -4492,13 +3979,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectedItemCollection", pipeline_response)
@@ -4508,11 +3994,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -4523,7 +4009,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_clusters_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_clusters_operations.py
new file mode 100644
index 000000000000..eccad888f5ed
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_clusters_operations.py
@@ -0,0 +1,1990 @@
+# 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 io import IOBase
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import urllib.parse
+
+from azure.core.async_paging import AsyncItemPaged, AsyncList
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
+ map_error,
+)
+from azure.core.pipeline import PipelineResponse
+from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
+from azure.core.rest import AsyncHttpResponse, HttpRequest
+from azure.core.tracing.decorator import distributed_trace
+from azure.core.tracing.decorator_async import distributed_trace_async
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
+
+from ... import models as _models
+from ...operations._replication_protection_clusters_operations import (
+ build_apply_recovery_point_request,
+ build_create_request,
+ build_failover_commit_request,
+ build_get_operation_results_request,
+ build_get_request,
+ build_list_by_replication_protection_containers_request,
+ build_list_request,
+ build_purge_request,
+ build_repair_replication_request,
+ build_test_failover_cleanup_request,
+ build_test_failover_request,
+ build_unplanned_failover_request,
+)
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+T = TypeVar("T")
+ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
+
+
+class ReplicationProtectionClustersOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.aio.SiteRecoveryManagementClient`'s
+ :attr:`replication_protection_clusters` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs) -> None:
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
+ self, resource_name: str, fabric_name: str, protection_container_name: str, **kwargs: Any
+ ) -> AsyncIterable["_models.ReplicationProtectionCluster"]:
+ # pylint: disable=line-too-long
+ """Gets the list of Replication protection clusters in fabric, container.
+
+ Gets the list of ASR replication protected clusters in the protection container.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :return: An iterator like instance of either ReplicationProtectionCluster or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionClusterCollection] = 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_replication_protection_containers_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ else:
+ # make call to next link with the client's api-version
+ _parsed_next_link = urllib.parse.urlparse(next_link)
+ _next_request_params = case_insensitive_dict(
+ {
+ key: [urllib.parse.quote(v) for v in value]
+ for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items()
+ }
+ )
+ _next_request_params["api-version"] = self._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("ReplicationProtectionClusterCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, AsyncList(list_of_elem)
+
+ async def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return AsyncItemPaged(get_next, extract_data)
+
+ @distributed_trace_async
+ async def get(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> _models.ReplicationProtectionCluster:
+ """Gets the details of a Replication protection cluster.
+
+ Gets the details of an ASR replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: ReplicationProtectionCluster or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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.ReplicationProtectionCluster] = kwargs.pop("cls", None)
+
+ _request = build_get_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ReplicationProtectionCluster", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
+
+ async def _create_initial(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: Union[_models.ReplicationProtectionCluster, 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(replication_protection_cluster, (IOBase, bytes)):
+ _content = replication_protection_cluster
+ else:
+ _json = self._serialize.body(replication_protection_cluster, "ReplicationProtectionCluster")
+
+ _request = build_create_request(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
+ subscription_id=self._config.subscription_id,
+ 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,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: _models.ReplicationProtectionCluster,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Required.
+ :type replication_protection_cluster:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_create(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Required.
+ :type replication_protection_cluster: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_create(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: Union[_models.ReplicationProtectionCluster, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Is either a
+ ReplicationProtectionCluster type or a IO[bytes] type. Required.
+ :type replication_protection_cluster:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ replication_protection_cluster=replication_protection_cluster,
+ 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("ReplicationProtectionCluster", 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.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ async def _purge_initial(
+ self, fabric_name: str, protection_container_name: str, replication_protection_cluster_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_purge_request(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_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 [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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace_async
+ async def begin_purge(
+ self, fabric_name: str, protection_container_name: str, replication_protection_cluster_name: str, **kwargs: Any
+ ) -> AsyncLROPoller[None]:
+ """Purge the replication protection cluster.
+
+ The operation to purge the replication protection cluster. This operation will force delete the
+ replication protection cluster. Use the remove operation on replication protection cluster to
+ perform a clean disable replication protection cluster.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_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._purge_initial(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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, lro_options={"final-state-via": "location"}, **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 _apply_recovery_point_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: Union[_models.ApplyClusterRecoveryPointInput, 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(apply_cluster_recovery_point_input, (IOBase, bytes)):
+ _content = apply_cluster_recovery_point_input
+ else:
+ _json = self._serialize.body(apply_cluster_recovery_point_input, "ApplyClusterRecoveryPointInput")
+
+ _request = build_apply_recovery_point_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ async def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: _models.ApplyClusterRecoveryPointInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Required.
+ :type apply_cluster_recovery_point_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Required.
+ :type apply_cluster_recovery_point_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: Union[_models.ApplyClusterRecoveryPointInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Is either a
+ ApplyClusterRecoveryPointInput type or a IO[bytes] type. Required.
+ :type apply_cluster_recovery_point_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInput or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._apply_recovery_point_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ apply_cluster_recovery_point_input=apply_cluster_recovery_point_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ async def _failover_commit_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_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_failover_commit_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace_async
+ async def begin_failover_commit(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute commit failover for cluster.
+
+ Operation to initiate commit failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionCluster] = 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._failover_commit_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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):
+ deserialized = self._deserialize("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ @distributed_trace_async
+ async def get_operation_results(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ job_id: str,
+ **kwargs: Any
+ ) -> _models.ReplicationProtectionCluster:
+ """Tracks the Replication protection cluster async operation.
+
+ Track the results of an asynchronous operation on the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param job_id: job id to track. Required.
+ :type job_id: str
+ :return: ReplicationProtectionCluster or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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.ReplicationProtectionCluster] = kwargs.pop("cls", None)
+
+ _request = build_get_operation_results_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ job_id=job_id,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ReplicationProtectionCluster", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
+
+ async def _repair_replication_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_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_repair_replication_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace_async
+ async def begin_repair_replication(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Resynchronize or repair replication of protection cluster.
+
+ The operation to repair replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionCluster] = 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._repair_replication_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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):
+ deserialized = self._deserialize("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ async def _test_failover_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterTestFailoverInput, 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(failover_input, (IOBase, bytes)):
+ _content = failover_input
+ else:
+ _json = self._serialize.body(failover_input, "ClusterTestFailoverInput")
+
+ _request = build_test_failover_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ async def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: _models.ClusterTestFailoverInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Required.
+ :type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Required.
+ :type failover_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterTestFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Is either a ClusterTestFailoverInput
+ type or a IO[bytes] type. Required.
+ :type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInput
+ or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._test_failover_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ failover_input=failover_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ async def _test_failover_cleanup_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: Union[_models.ClusterTestFailoverCleanupInput, 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(cleanup_input, (IOBase, bytes)):
+ _content = cleanup_input
+ else:
+ _json = self._serialize.body(cleanup_input, "ClusterTestFailoverCleanupInput")
+
+ _request = build_test_failover_cleanup_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ async def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: _models.ClusterTestFailoverCleanupInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Required.
+ :type cleanup_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Required.
+ :type cleanup_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: Union[_models.ClusterTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Is either a ClusterTestFailoverCleanupInput
+ type or a IO[bytes] type. Required.
+ :type cleanup_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInput or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._test_failover_cleanup_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ cleanup_input=cleanup_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ async def _unplanned_failover_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterUnplannedFailoverInput, 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(failover_input, (IOBase, bytes)):
+ _content = failover_input
+ else:
+ _json = self._serialize.body(failover_input, "ClusterUnplannedFailoverInput")
+
+ _request = build_unplanned_failover_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ async def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: _models.ClusterUnplannedFailoverInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Required.
+ :type failover_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Required.
+ :type failover_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ReplicationProtectionCluster]:
+ # pylint: disable=line-too-long
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Is either a ClusterUnplannedFailoverInput type or a
+ IO[bytes] type. Required.
+ :type failover_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInput or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._unplanned_failover_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ failover_input=failover_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ @distributed_trace
+ def list(
+ self, resource_name: str, skip_token: Optional[str] = None, filter: Optional[str] = None, **kwargs: Any
+ ) -> AsyncIterable["_models.ReplicationProtectionCluster"]:
+ # pylint: disable=line-too-long
+ """Gets the list of Replication protection clusters in vault.
+
+ Gets the list of ASR replication protected clusters in the vault.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param skip_token: The pagination token. Possible values: "FabricId" or "FabricId_CloudId" or
+ null. Default value is None.
+ :type skip_token: str
+ :param filter: OData filter options. Default value is None.
+ :type filter: str
+ :return: An iterator like instance of either ReplicationProtectionCluster or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionClusterCollection] = 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_request(
+ resource_name=resource_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ skip_token=skip_token,
+ 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("ReplicationProtectionClusterCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, AsyncList(list_of_elem)
+
+ async def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return AsyncItemPaged(get_next, extract_data)
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_container_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_container_mappings_operations.py
index 0601f85b608f..1d68b15415a8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_container_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_container_mappings_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_protection_container_mappings_operations import (
build_create_request,
build_delete_request,
@@ -41,11 +42,15 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
-class ReplicationProtectionContainerMappingsOperations:
+class ReplicationProtectionContainerMappingsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -65,9 +70,10 @@ def __init__(self, *args, **kwargs) -> None:
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self, fabric_name: str, protection_container_name: str, **kwargs: Any
) -> AsyncIterable["_models.ProtectionContainerMapping"]:
+ # pylint: disable=line-too-long
"""Gets the list of protection container mappings for a protection container.
Lists the protection container mappings for a protection container.
@@ -76,7 +82,6 @@ def list_by_replication_protection_containers(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainerMapping or the result of
cls(response)
:rtype:
@@ -89,7 +94,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -100,19 +105,17 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -124,13 +127,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerMappingCollection", pipeline_response)
@@ -140,11 +142,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -156,10 +158,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, protection_container_name: str, mapping_name: str, **kwargs: Any
@@ -174,12 +172,11 @@ async def get(
:type protection_container_name: str
:param mapping_name: Protection Container mapping name. Required.
:type mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectionContainerMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainerMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -193,24 +190,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -219,26 +214,22 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: Union[_models.CreateProtectionContainerMappingInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainerMapping]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -251,7 +242,7 @@ async def _create_initial(
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[Optional[_models.ProtectionContainerMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -261,47 +252,44 @@ async def _create_initial(
else:
_json = self._serialize.body(creation_input, "CreateProtectionContainerMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -330,14 +318,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -351,7 +331,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: IO,
+ creation_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -367,18 +347,10 @@ async def begin_create(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param creation_input: Mapping creation input. Required.
- :type creation_input: IO
+ :type creation_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -392,7 +364,7 @@ async def begin_create(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: Union[_models.CreateProtectionContainerMappingInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ProtectionContainerMapping]:
"""Create protection container mapping.
@@ -406,20 +378,10 @@ async def begin_create(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param creation_input: Mapping creation input. Is either a
- CreateProtectionContainerMappingInput type or a IO type. Required.
+ CreateProtectionContainerMappingInput type or a IO[bytes] type. Required.
:type creation_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerMappingInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -448,12 +410,13 @@ async def begin_create(
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("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -463,22 +426,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ProtectionContainerMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return AsyncLROPoller[_models.ProtectionContainerMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _purge_initial( # pylint: disable=inconsistent-return-statements
+ async def _purge_initial(
self, fabric_name: str, protection_container_name: str, mapping_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -490,40 +451,43 @@ async def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_purge(
@@ -539,14 +503,6 @@ async def begin_purge(
:type protection_container_name: str
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -560,7 +516,7 @@ async def begin_purge(
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._purge_initial( # type: ignore
+ raw_result = await self._purge_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
@@ -570,11 +526,12 @@ async def begin_purge(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -583,27 +540,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: Union[_models.UpdateProtectionContainerMappingInput, IO],
+ update_input: Union[_models.UpdateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainerMapping]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -616,7 +569,7 @@ async def _update_initial(
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[Optional[_models.ProtectionContainerMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -626,47 +579,44 @@ async def _update_initial(
else:
_json = self._serialize.body(update_input, "UpdateProtectionContainerMappingInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -695,14 +645,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -716,7 +658,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: IO,
+ update_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -732,18 +674,10 @@ async def begin_update(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param update_input: Mapping update input. Required.
- :type update_input: IO
+ :type update_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -757,7 +691,7 @@ async def begin_update(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: Union[_models.UpdateProtectionContainerMappingInput, IO],
+ update_input: Union[_models.UpdateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ProtectionContainerMapping]:
"""Update protection container mapping.
@@ -771,20 +705,10 @@ async def begin_update(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param update_input: Mapping update input. Is either a UpdateProtectionContainerMappingInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type update_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateProtectionContainerMappingInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ProtectionContainerMapping or the
result of cls(response)
:rtype:
@@ -813,12 +737,13 @@ async def begin_update(
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("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -828,27 +753,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ProtectionContainerMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return AsyncLROPoller[_models.ProtectionContainerMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO],
+ removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -861,7 +784,7 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
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[None] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -871,41 +794,44 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
else:
_json = self._serialize.body(removal_input, "RemoveProtectionContainerMappingInput")
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove"
- }
+ return deserialized # type: ignore
@overload
async def begin_delete(
@@ -934,14 +860,6 @@ async def begin_delete(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -953,7 +871,7 @@ async def begin_delete(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: IO,
+ removal_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -969,18 +887,10 @@ async def begin_delete(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param removal_input: Removal input. Required.
- :type removal_input: IO
+ :type removal_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -992,7 +902,7 @@ async def begin_delete(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO],
+ removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[None]:
"""Remove protection container mapping.
@@ -1006,20 +916,10 @@ async def begin_delete(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param removal_input: Removal input. Is either a RemoveProtectionContainerMappingInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type removal_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.RemoveProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.RemoveProtectionContainerMappingInput or
+ IO[bytes]
: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:
@@ -1034,7 +934,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
@@ -1046,11 +946,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -1059,25 +960,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainerMapping"]:
+ # pylint: disable=line-too-long
"""Gets the list of all protection container mappings in a vault.
Lists the protection container mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainerMapping or the result of
cls(response)
:rtype:
@@ -1090,7 +987,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainerMappi
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1101,17 +998,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainerMappi
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1123,13 +1018,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerMappingCollection", pipeline_response)
@@ -1139,11 +1033,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1154,7 +1048,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_containers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_containers_operations.py
index 497c962a8b09..12697da3ea1d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_containers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_containers_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_protection_containers_operations import (
build_create_request,
build_delete_request,
@@ -38,14 +39,19 @@
build_get_request,
build_list_by_replication_fabrics_request,
build_list_request,
+ build_switch_cluster_protection_request,
build_switch_protection_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
-class ReplicationProtectionContainersOperations:
+class ReplicationProtectionContainersOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -74,7 +80,6 @@ def list_by_replication_fabrics(
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainer or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
@@ -86,7 +91,7 @@ def list_by_replication_fabrics(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -97,18 +102,16 @@ def list_by_replication_fabrics(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -120,13 +123,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerCollection", pipeline_response)
@@ -136,11 +138,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -152,10 +154,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -> _models.ProtectionContainer:
"""Gets the protection container details.
@@ -166,12 +164,11 @@ async def get(self, fabric_name: str, protection_container_name: str, **kwargs:
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectionContainer or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -185,23 +182,21 @@ async def get(self, fabric_name: str, protection_container_name: str, **kwargs:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainer] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -210,25 +205,21 @@ async def get(self, fabric_name: str, protection_container_name: str, **kwargs:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: Union[_models.CreateProtectionContainerInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -241,7 +232,7 @@ async def _create_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -251,46 +242,43 @@ async def _create_initial(
else:
_json = self._serialize.body(creation_input, "CreateProtectionContainerInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -316,14 +304,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -336,7 +316,7 @@ async def begin_create(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: IO,
+ creation_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -350,18 +330,10 @@ async def begin_create(
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
:param creation_input: Creation input. Required.
- :type creation_input: IO
+ :type creation_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -374,7 +346,7 @@ async def begin_create(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: Union[_models.CreateProtectionContainerInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ProtectionContainer]:
"""Create a protection container.
@@ -385,21 +357,10 @@ async def begin_create(
:type fabric_name: str
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
- :param creation_input: Creation input. Is either a CreateProtectionContainerInput type or a IO
- type. Required.
+ :param creation_input: Creation input. Is either a CreateProtectionContainerInput type or a
+ IO[bytes] type. Required.
:type creation_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -427,12 +388,13 @@ async def begin_create(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -442,26 +404,24 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return AsyncLROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _discover_protectable_item_initial(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO],
+ discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -474,7 +434,7 @@ async def _discover_protectable_item_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -484,46 +444,43 @@ async def _discover_protectable_item_initial(
else:
_json = self._serialize.body(discover_protectable_item_request, "DiscoverProtectableItemRequest")
- request = build_discover_protectable_item_request(
+ _request = build_discover_protectable_item_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._discover_protectable_item_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _discover_protectable_item_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem"
- }
+ return deserialized # type: ignore
@overload
async def begin_discover_protectable_item(
@@ -550,14 +507,6 @@ async def begin_discover_protectable_item(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -570,7 +519,7 @@ async def begin_discover_protectable_item(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: IO,
+ discover_protectable_item_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -585,18 +534,10 @@ async def begin_discover_protectable_item(
:type protection_container_name: str
:param discover_protectable_item_request: The request object to add a protectable item.
Required.
- :type discover_protectable_item_request: IO
+ :type discover_protectable_item_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -609,7 +550,7 @@ async def begin_discover_protectable_item(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO],
+ discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ProtectionContainer]:
"""Adds a protectable item to the replication protection container.
@@ -621,20 +562,9 @@ async def begin_discover_protectable_item(
:param protection_container_name: The name of the protection container. Required.
:type protection_container_name: str
:param discover_protectable_item_request: The request object to add a protectable item. Is
- either a DiscoverProtectableItemRequest type or a IO type. Required.
+ either a DiscoverProtectableItemRequest type or a IO[bytes] type. Required.
:type discover_protectable_item_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiscoverProtectableItemRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiscoverProtectableItemRequest or IO[bytes]
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -662,12 +592,13 @@ async def begin_discover_protectable_item(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -677,22 +608,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_discover_protectable_item.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem"
- }
+ return AsyncLROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self, fabric_name: str, protection_container_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -704,39 +633,42 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(
@@ -750,14 +682,6 @@ async def begin_delete(
:type fabric_name: str
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -771,7 +695,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
api_version=api_version,
@@ -780,11 +704,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -793,26 +718,246 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove"
- }
+ async def _switch_cluster_protection_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: Union[_models.SwitchClusterProtectionInput, 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(switch_input, (IOBase, bytes)):
+ _content = switch_input
+ else:
+ _json = self._serialize.body(switch_input, "SwitchClusterProtectionInput")
+
+ _request = build_switch_cluster_protection_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ async def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: _models.SwitchClusterProtectionInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Required.
+ :type switch_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInput
+ :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 ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ async def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Required.
+ :type switch_input: IO[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 ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace_async
+ async def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: Union[_models.SwitchClusterProtectionInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncLROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Is either a SwitchClusterProtectionInput type or
+ a IO[bytes] type. Required.
+ :type switch_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInput or IO[bytes]
+ :return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.AsyncLROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :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.ProtectionContainer] = 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._switch_cluster_protection_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ switch_input=switch_input,
+ 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("ProtectionContainer", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return AsyncLROPoller[_models.ProtectionContainer].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return AsyncLROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _switch_protection_initial(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: Union[_models.SwitchProtectionInput, IO],
+ switch_input: Union[_models.SwitchProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -825,7 +970,7 @@ async def _switch_protection_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -835,46 +980,51 @@ async def _switch_protection_initial(
else:
_json = self._serialize.body(switch_input, "SwitchProtectionInput")
- request = build_switch_protection_request(
+ _request = build_switch_protection_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._switch_protection_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
- if cls:
- return cls(pipeline_response, deserialized, {})
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
- return deserialized
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _switch_protection_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection"
- }
+ return deserialized # type: ignore
@overload
async def begin_switch_protection(
@@ -900,14 +1050,6 @@ async def begin_switch_protection(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -920,7 +1062,7 @@ async def begin_switch_protection(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: IO,
+ switch_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -935,18 +1077,10 @@ async def begin_switch_protection(
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
:param switch_input: Switch protection input. Required.
- :type switch_input: IO
+ :type switch_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -959,7 +1093,7 @@ async def begin_switch_protection(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: Union[_models.SwitchProtectionInput, IO],
+ switch_input: Union[_models.SwitchProtectionInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.ProtectionContainer]:
"""Switches protection from one container to another or one replication provider to another.
@@ -971,20 +1105,10 @@ async def begin_switch_protection(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :param switch_input: Switch protection input. Is either a SwitchProtectionInput type or a IO
- type. Required.
- :type switch_input: ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param switch_input: Switch protection input. Is either a SwitchProtectionInput type or a
+ IO[bytes] type. Required.
+ :type switch_input: ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProtectionInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -1012,12 +1136,13 @@ async def begin_switch_protection(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1027,17 +1152,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_switch_protection.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection"
- }
+ return AsyncLROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainer"]:
@@ -1045,7 +1168,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainer"]:
Lists the protection containers in a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainer or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
@@ -1057,7 +1179,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainer"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1068,17 +1190,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.ProtectionContainer"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1090,13 +1210,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerCollection", pipeline_response)
@@ -1106,11 +1225,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1121,7 +1240,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_intents_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_intents_operations.py
index 72c0e19b4ab6..6e86a03a5344 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_intents_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protection_intents_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,6 +6,7 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
+import sys
from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, overload
import urllib.parse
@@ -20,21 +20,23 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_protection_intents_operations import (
build_create_request,
build_get_request,
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -62,6 +64,7 @@ def __init__(self, *args, **kwargs) -> None:
def list(
self, skip_token: Optional[str] = None, take_token: Optional[str] = None, **kwargs: Any
) -> AsyncIterable["_models.ReplicationProtectionIntent"]:
+ # pylint: disable=line-too-long
"""Gets the list of replication protection intent objects.
Gets the list of ASR replication protection intent objects in the vault.
@@ -70,7 +73,6 @@ def list(
:type skip_token: str
:param take_token: The page size. Default value is None.
:type take_token: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectionIntent or the result of
cls(response)
:rtype:
@@ -83,7 +85,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectionIntentCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -94,19 +96,17 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -118,13 +118,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectionIntentCollection", pipeline_response)
@@ -134,11 +133,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -150,10 +149,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents"
- }
-
@distributed_trace_async
async def get(self, intent_object_name: str, **kwargs: Any) -> _models.ReplicationProtectionIntent:
"""Gets the details of a Replication protection intent item.
@@ -162,12 +157,11 @@ async def get(self, intent_object_name: str, **kwargs: Any) -> _models.Replicati
:param intent_object_name: Replication protection intent name. Required.
:type intent_object_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -181,22 +175,20 @@ async def get(self, intent_object_name: str, **kwargs: Any) -> _models.Replicati
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectionIntent] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
intent_object_name=intent_object_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -205,16 +197,12 @@ async def get(self, intent_object_name: str, **kwargs: Any) -> _models.Replicati
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}"
- }
+ return deserialized # type: ignore
@overload
async def create(
@@ -236,7 +224,6 @@ async def create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
@@ -244,7 +231,7 @@ async def create(
@overload
async def create(
- self, intent_object_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, intent_object_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> _models.ReplicationProtectionIntent:
"""Create protection intent Resource.
@@ -253,11 +240,10 @@ async def create(
:param intent_object_name: A name for the replication protection item. Required.
:type intent_object_name: str
:param input: Create Protection Intent Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
@@ -265,7 +251,7 @@ async def create(
@distributed_trace_async
async def create(
- self, intent_object_name: str, input: Union[_models.CreateProtectionIntentInput, IO], **kwargs: Any
+ self, intent_object_name: str, input: Union[_models.CreateProtectionIntentInput, IO[bytes]], **kwargs: Any
) -> _models.ReplicationProtectionIntent:
"""Create protection intent Resource.
@@ -274,17 +260,14 @@ async def create(
:param intent_object_name: A name for the replication protection item. Required.
:type intent_object_name: str
:param input: Create Protection Intent Input. Is either a CreateProtectionIntentInput type or a
- IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionIntentInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionIntentInput or
+ IO[bytes]
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -307,25 +290,23 @@ async def create(
else:
_json = self._serialize.body(input, "CreateProtectionIntentInput")
- request = build_create_request(
+ _request = build_create_request(
intent_object_name=intent_object_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self.create.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -334,13 +315,9 @@ async def create(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_plans_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_plans_operations.py
index c8071b255011..b81ef34064d9 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_plans_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_plans_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +18,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +32,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_recovery_plans_operations import (
build_create_request,
build_delete_request,
@@ -46,6 +47,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -75,7 +80,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryPlan"]:
Lists the recovery plans in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryPlan or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlan]
@@ -87,7 +91,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryPlan"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPlanCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -98,17 +102,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryPlan"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -120,13 +122,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryPlanCollection", pipeline_response)
@@ -136,11 +137,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -152,10 +153,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans"
- }
-
@distributed_trace_async
async def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryPlan:
"""Gets the requested recovery plan.
@@ -164,12 +161,11 @@ async def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryP
:param recovery_plan_name: Name of the recovery plan. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryPlan or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlan
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -183,22 +179,20 @@ async def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryP
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPlan] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -207,21 +201,17 @@ async def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryP
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
- self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -234,7 +224,7 @@ async def _create_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -244,45 +234,42 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "CreateRecoveryPlanInput")
- request = build_create_request(
+ _request = build_create_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -304,14 +291,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -321,7 +300,7 @@ async def begin_create(
@overload
async def begin_create(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Creates a recovery plan with the given details.
@@ -330,18 +309,10 @@ async def begin_create(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery Plan creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -351,7 +322,7 @@ async def begin_create(
@distributed_trace_async
async def begin_create(
- self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Creates a recovery plan with the given details.
@@ -359,20 +330,10 @@ async def begin_create(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Recovery Plan creation input. Is either a CreateRecoveryPlanInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateRecoveryPlanInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Recovery Plan creation input. Is either a CreateRecoveryPlanInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateRecoveryPlanInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -399,12 +360,13 @@ async def begin_create(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -414,22 +376,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, recovery_plan_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _delete_initial(self, recovery_plan_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -441,38 +399,41 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -482,14 +443,6 @@ async def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> AsyncLRO
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -503,7 +456,7 @@ async def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> AsyncLRO
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( # type: ignore
+ raw_result = await self._delete_initial(
recovery_plan_name=recovery_plan_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -511,11 +464,12 @@ async def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> AsyncLRO
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -524,22 +478,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
- self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -552,7 +502,7 @@ async def _update_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -562,45 +512,42 @@ async def _update_initial(
else:
_json = self._serialize.body(input, "UpdateRecoveryPlanInput")
- request = build_update_request(
+ _request = build_update_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -622,14 +569,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -639,7 +578,7 @@ async def begin_update(
@overload
async def begin_update(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Updates the given recovery plan.
@@ -648,18 +587,10 @@ async def begin_update(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Update recovery plan input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -669,7 +600,7 @@ async def begin_update(
@distributed_trace_async
async def begin_update(
- self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Updates the given recovery plan.
@@ -677,20 +608,10 @@ async def begin_update(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Update recovery plan input. Is either a UpdateRecoveryPlanInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateRecoveryPlanInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update recovery plan input. Is either a UpdateRecoveryPlanInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateRecoveryPlanInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -717,12 +638,13 @@ async def begin_update(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -732,20 +654,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ async def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -757,44 +677,41 @@ async def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any)
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_cancel_request(
+ _request = build_failover_cancel_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _failover_cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_failover_cancel(
@@ -806,14 +723,6 @@ async def begin_failover_cancel(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -837,12 +746,13 @@ async def begin_failover_cancel(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -852,20 +762,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ async def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -877,44 +785,41 @@ async def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any)
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_commit_request(
+ _request = build_failover_commit_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_commit_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _failover_commit_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_failover_commit(
@@ -926,14 +831,6 @@ async def begin_failover_commit(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -957,12 +854,13 @@ async def begin_failover_commit(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -972,22 +870,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_commit.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _planned_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1000,7 +896,7 @@ async def _planned_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1010,45 +906,42 @@ async def _planned_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanPlannedFailoverInput")
- request = build_planned_failover_request(
+ _request = build_planned_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._planned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _planned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_planned_failover(
@@ -1070,14 +963,6 @@ async def begin_planned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1087,7 +972,7 @@ async def begin_planned_failover(
@overload
async def begin_planned_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute planned failover of the recovery plan.
@@ -1096,18 +981,10 @@ async def begin_planned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1117,7 +994,7 @@ async def begin_planned_failover(
@distributed_trace_async
async def begin_planned_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute planned failover of the recovery plan.
@@ -1125,21 +1002,10 @@ async def begin_planned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Failover input. Is either a RecoveryPlanPlannedFailoverInput type or a IO type.
- Required.
+ :param input: Failover input. Is either a RecoveryPlanPlannedFailoverInput type or a IO[bytes]
+ type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanPlannedFailoverInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1166,12 +1032,13 @@ async def begin_planned_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1181,20 +1048,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_planned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ async def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1206,61 +1071,51 @@ async def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> Op
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_reprotect_request(
+ _request = build_reprotect_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._reprotect_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _reprotect_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_reprotect(self, recovery_plan_name: str, **kwargs: Any) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute reprotect of the recovery plan.
- The operation to reprotect(reverse replicate) a recovery plan.
+ The operation to reprotect(reverse replicate) a recovery plan. This api is for deprecated
+ scenarios and no longer works.
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1284,12 +1139,13 @@ async def begin_reprotect(self, recovery_plan_name: str, **kwargs: Any) -> Async
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1299,22 +1155,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reprotect.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1327,7 +1181,7 @@ async def _test_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1337,45 +1191,42 @@ async def _test_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanTestFailoverInput")
- request = build_test_failover_request(
+ _request = build_test_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _test_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_failover(
@@ -1397,14 +1248,6 @@ async def begin_test_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1414,7 +1257,7 @@ async def begin_test_failover(
@overload
async def begin_test_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute test failover of the recovery plan.
@@ -1423,18 +1266,10 @@ async def begin_test_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1444,7 +1279,7 @@ async def begin_test_failover(
@distributed_trace_async
async def begin_test_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute test failover of the recovery plan.
@@ -1453,20 +1288,9 @@ async def begin_test_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover input. Is either a RecoveryPlanTestFailoverInput type
- or a IO type. Required.
+ or a IO[bytes] type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1493,12 +1317,13 @@ async def begin_test_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1508,22 +1333,23 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _test_failover_cleanup_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1536,7 +1362,7 @@ async def _test_failover_cleanup_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1546,45 +1372,42 @@ async def _test_failover_cleanup_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanTestFailoverCleanupInput")
- request = build_test_failover_cleanup_request(
+ _request = build_test_failover_cleanup_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_failover_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup"
- }
+ return deserialized # type: ignore
@overload
async def begin_test_failover_cleanup(
@@ -1607,14 +1430,6 @@ async def begin_test_failover_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1624,7 +1439,7 @@ async def begin_test_failover_cleanup(
@overload
async def begin_test_failover_cleanup(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute test failover cleanup of the recovery plan.
@@ -1633,18 +1448,10 @@ async def begin_test_failover_cleanup(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover cleanup input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1654,7 +1461,10 @@ async def begin_test_failover_cleanup(
@distributed_trace_async
async def begin_test_failover_cleanup(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO], **kwargs: Any
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute test failover cleanup of the recovery plan.
@@ -1663,20 +1473,10 @@ async def begin_test_failover_cleanup(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover cleanup input. Is either a
- RecoveryPlanTestFailoverCleanupInput type or a IO type. Required.
+ RecoveryPlanTestFailoverCleanupInput type or a IO[bytes] type. Required.
:type input:
- ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverCleanupInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverCleanupInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1703,12 +1503,13 @@ async def begin_test_failover_cleanup(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1718,22 +1519,23 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
async def _unplanned_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1746,7 +1548,7 @@ async def _unplanned_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1756,45 +1558,42 @@ async def _unplanned_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanUnplannedFailoverInput")
- request = build_unplanned_failover_request(
+ _request = build_unplanned_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._unplanned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _unplanned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover"
- }
+ return deserialized # type: ignore
@overload
async def begin_unplanned_failover(
@@ -1816,14 +1615,6 @@ async def begin_unplanned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1833,7 +1624,7 @@ async def begin_unplanned_failover(
@overload
async def begin_unplanned_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute unplanned failover of the recovery plan.
@@ -1842,18 +1633,10 @@ async def begin_unplanned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan unplanned failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1863,7 +1646,10 @@ async def begin_unplanned_failover(
@distributed_trace_async
async def begin_unplanned_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO], **kwargs: Any
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
) -> AsyncLROPoller[_models.RecoveryPlan]:
"""Execute unplanned failover of the recovery plan.
@@ -1872,20 +1658,9 @@ async def begin_unplanned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan unplanned failover input. Is either a
- RecoveryPlanUnplannedFailoverInput type or a IO type. Required.
+ RecoveryPlanUnplannedFailoverInput type or a IO[bytes] type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanUnplannedFailoverInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1912,12 +1687,13 @@ async def begin_unplanned_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1927,14 +1703,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_unplanned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover"
- }
+ return AsyncLROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_services_providers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_services_providers_operations.py
index 29cdd60e26ab..c36cda858c40 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_services_providers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_recovery_services_providers_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_recovery_services_providers_operations import (
build_create_request,
build_delete_request,
@@ -41,11 +41,15 @@
build_refresh_provider_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
-class ReplicationRecoveryServicesProvidersOperations:
+class ReplicationRecoveryServicesProvidersOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -68,13 +72,13 @@ def __init__(self, *args, **kwargs) -> None:
def list_by_replication_fabrics(
self, fabric_name: str, **kwargs: Any
) -> AsyncIterable["_models.RecoveryServicesProvider"]:
+ # pylint: disable=line-too-long
"""Gets the list of registered recovery services providers for the fabric.
Lists the registered recovery services providers for the specified fabric.
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -87,7 +91,7 @@ def list_by_replication_fabrics(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProviderCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -98,18 +102,16 @@ def list_by_replication_fabrics(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -121,13 +123,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryServicesProviderCollection", pipeline_response)
@@ -137,11 +138,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -153,10 +154,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _models.RecoveryServicesProvider:
"""Gets the details of a recovery services provider.
@@ -167,12 +164,11 @@ async def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _mod
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryServicesProvider or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryServicesProvider
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -186,23 +182,21 @@ async def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _mod
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProvider] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -211,25 +205,21 @@ async def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _mod
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO],
+ add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.RecoveryServicesProvider]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -242,7 +232,7 @@ async def _create_initial(
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[Optional[_models.RecoveryServicesProvider]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -252,46 +242,43 @@ async def _create_initial(
else:
_json = self._serialize.body(add_provider_input, "AddRecoveryServicesProviderInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -317,14 +304,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryServicesProvider or the
result of cls(response)
:rtype:
@@ -337,7 +316,7 @@ async def begin_create(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: IO,
+ add_provider_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -351,18 +330,10 @@ async def begin_create(
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
:param add_provider_input: Add provider input. Required.
- :type add_provider_input: IO
+ :type add_provider_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryServicesProvider or the
result of cls(response)
:rtype:
@@ -375,7 +346,7 @@ async def begin_create(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO],
+ add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.RecoveryServicesProvider]:
"""Adds a recovery services provider.
@@ -387,20 +358,9 @@ async def begin_create(
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
:param add_provider_input: Add provider input. Is either a AddRecoveryServicesProviderInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type add_provider_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either RecoveryServicesProvider or the
result of cls(response)
:rtype:
@@ -428,12 +388,13 @@ async def begin_create(
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("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -443,22 +404,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryServicesProvider].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return AsyncLROPoller[_models.RecoveryServicesProvider](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _purge_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _purge_initial(self, fabric_name: str, provider_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -470,39 +427,42 @@ async def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -514,14 +474,6 @@ async def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any)
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -535,7 +487,7 @@ async def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any)
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._purge_initial( # type: ignore
+ raw_result = await self._purge_initial(
fabric_name=fabric_name,
provider_name=provider_name,
api_version=api_version,
@@ -544,11 +496,12 @@ async def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any)
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -557,22 +510,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _refresh_provider_initial(
self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> Optional[_models.RecoveryServicesProvider]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -584,45 +533,42 @@ async def _refresh_provider_initial(
_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[Optional[_models.RecoveryServicesProvider]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_refresh_provider_request(
+ _request = build_refresh_provider_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._refresh_provider_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _refresh_provider_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_refresh_provider(
@@ -636,14 +582,6 @@ async def begin_refresh_provider(
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either RecoveryServicesProvider or the
result of cls(response)
:rtype:
@@ -668,12 +606,13 @@ async def begin_refresh_provider(
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("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -683,22 +622,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.RecoveryServicesProvider].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_refresh_provider.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider"
- }
+ return AsyncLROPoller[_models.RecoveryServicesProvider](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _delete_initial(self, fabric_name: str, provider_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -710,39 +645,42 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -757,14 +695,6 @@ async def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -778,7 +708,7 @@ async def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
provider_name=provider_name,
api_version=api_version,
@@ -787,11 +717,12 @@ async def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -800,25 +731,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryServicesProvider"]:
+ # pylint: disable=line-too-long
"""Gets the list of registered recovery services providers in the vault. This is a view only api.
Lists the registered recovery services providers in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -831,7 +758,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryServicesProvider
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProviderCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -842,17 +769,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.RecoveryServicesProvider
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -864,13 +789,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryServicesProviderCollection", pipeline_response)
@@ -880,11 +804,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -895,7 +819,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classification_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classification_mappings_operations.py
index 47f1d3029f2b..c33fb7b5ac41 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classification_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classification_mappings_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_storage_classification_mappings_operations import (
build_create_request,
build_delete_request,
@@ -39,11 +39,15 @@
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
-class ReplicationStorageClassificationMappingsOperations:
+class ReplicationStorageClassificationMappingsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -63,9 +67,10 @@ def __init__(self, *args, **kwargs) -> None:
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_storage_classifications(
+ def list_by_replication_storage_classifications( # pylint: disable=name-too-long
self, fabric_name: str, storage_classification_name: str, **kwargs: Any
) -> AsyncIterable["_models.StorageClassificationMapping"]:
+ # pylint: disable=line-too-long
"""Gets the list of storage classification mappings objects under a storage.
Lists the storage classification mappings for the fabric.
@@ -74,7 +79,6 @@ def list_by_replication_storage_classifications(
:type fabric_name: str
:param storage_classification_name: Storage classification name. Required.
:type storage_classification_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassificationMapping or the result of
cls(response)
:rtype:
@@ -87,7 +91,7 @@ def list_by_replication_storage_classifications(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -98,19 +102,17 @@ def list_by_replication_storage_classifications(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_storage_classifications_request(
+ _request = build_list_by_replication_storage_classifications_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_storage_classifications.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -122,13 +124,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationMappingCollection", pipeline_response)
@@ -138,11 +139,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -154,10 +155,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_storage_classifications.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings"
- }
-
@distributed_trace_async
async def get(
self,
@@ -176,12 +173,11 @@ async def get(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: StorageClassificationMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -195,24 +191,22 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -221,26 +215,22 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("StorageClassificationMapping", pipeline_response)
+ deserialized = self._deserialize("StorageClassificationMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: Union[_models.StorageClassificationMappingInput, IO],
+ pairing_input: Union[_models.StorageClassificationMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.StorageClassificationMapping]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -253,7 +243,7 @@ async def _create_initial(
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[Optional[_models.StorageClassificationMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -263,47 +253,44 @@ async def _create_initial(
else:
_json = self._serialize.body(pairing_input, "StorageClassificationMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("StorageClassificationMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -316,6 +303,7 @@ async def begin_create(
content_type: str = "application/json",
**kwargs: Any
) -> AsyncLROPoller[_models.StorageClassificationMapping]:
+ # pylint: disable=line-too-long
"""Create storage classification mapping.
The operation to create a storage classification mapping.
@@ -332,14 +320,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -353,11 +333,12 @@ async def begin_create(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: IO,
+ pairing_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
) -> AsyncLROPoller[_models.StorageClassificationMapping]:
+ # pylint: disable=line-too-long
"""Create storage classification mapping.
The operation to create a storage classification mapping.
@@ -369,18 +350,10 @@ async def begin_create(
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
:param pairing_input: Pairing input. Required.
- :type pairing_input: IO
+ :type pairing_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -394,9 +367,10 @@ async def begin_create(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: Union[_models.StorageClassificationMappingInput, IO],
+ pairing_input: Union[_models.StorageClassificationMappingInput, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.StorageClassificationMapping]:
+ # pylint: disable=line-too-long
"""Create storage classification mapping.
The operation to create a storage classification mapping.
@@ -407,21 +381,10 @@ async def begin_create(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :param pairing_input: Pairing input. Is either a StorageClassificationMappingInput type or a IO
- type. Required.
+ :param pairing_input: Pairing input. Is either a StorageClassificationMappingInput type or a
+ IO[bytes] type. Required.
:type pairing_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMappingInput or IO[bytes]
:return: An instance of AsyncLROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -450,12 +413,13 @@ async def begin_create(
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("StorageClassificationMapping", pipeline_response)
+ deserialized = self._deserialize("StorageClassificationMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -465,26 +429,24 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.StorageClassificationMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return AsyncLROPoller[_models.StorageClassificationMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
+ async def _delete_initial(
self,
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -496,40 +458,43 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(
@@ -549,14 +514,6 @@ async def begin_delete(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -570,7 +527,7 @@ async def begin_delete(
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
@@ -580,11 +537,12 @@ async def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -593,25 +551,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassificationMapping"]:
+ # pylint: disable=line-too-long
"""Gets the list of storage classification mappings objects under a vault.
Lists the storage classification mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassificationMapping or the result of
cls(response)
:rtype:
@@ -624,7 +578,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassificationMap
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -635,17 +589,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassificationMap
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -657,13 +609,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationMappingCollection", pipeline_response)
@@ -673,11 +624,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -688,7 +639,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classifications_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classifications_operations.py
index 58f8b302fcbb..5043a831d502 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classifications_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_storage_classifications_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,26 +19,28 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_storage_classifications_operations import (
build_get_request,
build_list_by_replication_fabrics_request,
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
-class ReplicationStorageClassificationsOperations:
+class ReplicationStorageClassificationsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -67,7 +69,6 @@ def list_by_replication_fabrics(
:param fabric_name: Site name of interest. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassification or the result of
cls(response)
:rtype:
@@ -80,7 +81,7 @@ def list_by_replication_fabrics(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -91,18 +92,16 @@ def list_by_replication_fabrics(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -114,13 +113,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationCollection", pipeline_response)
@@ -130,11 +128,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -146,10 +144,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications"
- }
-
@distributed_trace_async
async def get(
self, fabric_name: str, storage_classification_name: str, **kwargs: Any
@@ -162,12 +156,11 @@ async def get(
:type fabric_name: str
:param storage_classification_name: Storage classification name. Required.
:type storage_classification_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: StorageClassification or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassification
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -181,23 +174,21 @@ async def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassification] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -206,16 +197,12 @@ async def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("StorageClassification", pipeline_response)
+ deserialized = self._deserialize("StorageClassification", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassification"]:
@@ -223,7 +210,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassification"]:
Lists the storage classifications in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassification or the result of
cls(response)
:rtype:
@@ -236,7 +222,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassification"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -247,17 +233,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.StorageClassification"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -269,13 +253,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationCollection", pipeline_response)
@@ -285,11 +268,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -300,7 +283,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_health_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_health_operations.py
index 07784c46208b..c3b7e5d0f030 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_health_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_health_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,7 +5,8 @@
# 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, Callable, Dict, Optional, TypeVar, Union, cast
+import sys
+from typing import Any, AsyncIterator, Callable, Dict, Optional, TypeVar, Union, cast
from azure.core.exceptions import (
ClientAuthenticationError,
@@ -14,21 +14,25 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_vault_health_operations import build_get_request, build_refresh_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -58,12 +62,11 @@ async def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
Gets the health details of the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VaultHealthDetails or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VaultHealthDetails
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -77,21 +80,19 @@ async def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultHealthDetails] = kwargs.pop("cls", None)
- request = build_get_request(
- resource_name=self._config.resource_name,
+ _request = build_get_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -100,19 +101,15 @@ async def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = self._deserialize("VaultHealthDetails", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth"
- }
+ return deserialized # type: ignore
- async def _refresh_initial(self, **kwargs: Any) -> Optional[_models.VaultHealthDetails]:
- error_map = {
+ async def _refresh_initial(self, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -124,43 +121,40 @@ async def _refresh_initial(self, **kwargs: Any) -> Optional[_models.VaultHealthD
_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[Optional[_models.VaultHealthDetails]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_refresh_request(
- resource_name=self._config.resource_name,
+ _request = build_refresh_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._refresh_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _refresh_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_refresh(self, **kwargs: Any) -> AsyncLROPoller[_models.VaultHealthDetails]:
@@ -168,14 +162,6 @@ async def begin_refresh(self, **kwargs: Any) -> AsyncLROPoller[_models.VaultHeal
Refreshes health summary of the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VaultHealthDetails or the result of
cls(response)
:rtype:
@@ -194,12 +180,13 @@ async def begin_refresh(self, **kwargs: Any) -> AsyncLROPoller[_models.VaultHeal
raw_result = await self._refresh_initial(
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):
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = self._deserialize("VaultHealthDetails", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -209,14 +196,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.VaultHealthDetails].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_refresh.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh"
- }
+ return AsyncLROPoller[_models.VaultHealthDetails](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_setting_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_setting_operations.py
index 1cec7d94b837..3a3000cb0559 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_setting_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_vault_setting_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,13 +31,16 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replication_vault_setting_operations import (
build_create_request,
build_get_request,
build_list_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -66,7 +70,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VaultSetting"]:
Gets the list of vault setting. This includes the Migration Hub connection settings.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VaultSetting or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VaultSetting]
@@ -78,7 +81,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VaultSetting"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultSettingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -89,17 +92,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VaultSetting"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -111,13 +112,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("VaultSettingCollection", pipeline_response)
@@ -127,11 +127,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -143,10 +143,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings"
- }
-
@distributed_trace_async
async def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSetting:
"""Gets the vault setting.
@@ -155,12 +151,11 @@ async def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSett
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VaultSetting or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSetting
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -174,22 +169,20 @@ async def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSett
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultSetting] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
vault_setting_name=vault_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -198,21 +191,17 @@ async def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSett
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultSetting", pipeline_response)
+ deserialized = self._deserialize("VaultSetting", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
- self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO], **kwargs: Any
- ) -> _models.VaultSetting:
- error_map = {
+ self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO[bytes]], **kwargs: Any
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -225,7 +214,7 @@ async def _create_initial(
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.VaultSetting] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -235,43 +224,42 @@ async def _create_initial(
else:
_json = self._serialize.body(input, "VaultSettingCreationInput")
- request = build_create_request(
+ _request = build_create_request(
vault_setting_name=vault_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [200]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultSetting", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -294,14 +282,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -311,7 +291,7 @@ async def begin_create(
@overload
async def begin_create(
- self, vault_setting_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, vault_setting_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> AsyncLROPoller[_models.VaultSetting]:
"""Updates vault setting. A vault setting object is a singleton per vault and it is always present
by default.
@@ -321,18 +301,10 @@ async def begin_create(
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
:param input: Vault setting creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -342,7 +314,7 @@ async def begin_create(
@distributed_trace_async
async def begin_create(
- self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO], **kwargs: Any
+ self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO[bytes]], **kwargs: Any
) -> AsyncLROPoller[_models.VaultSetting]:
"""Updates vault setting. A vault setting object is a singleton per vault and it is always present
by default.
@@ -351,20 +323,10 @@ async def begin_create(
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
- :param input: Vault setting creation input. Is either a VaultSettingCreationInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSettingCreationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Vault setting creation input. Is either a VaultSettingCreationInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSettingCreationInput or
+ IO[bytes]
:return: An instance of AsyncLROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -391,12 +353,13 @@ async def begin_create(
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("VaultSetting", pipeline_response)
+ deserialized = self._deserialize("VaultSetting", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -406,14 +369,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.VaultSetting].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return AsyncLROPoller[_models.VaultSetting](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replicationv_centers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replicationv_centers_operations.py
index 588effefd2d6..b6a33b99a677 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replicationv_centers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replicationv_centers_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.async_paging import AsyncItemPaged, AsyncList
@@ -17,12 +17,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,7 +31,6 @@
from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._replicationv_centers_operations import (
build_create_request,
build_delete_request,
@@ -40,6 +40,10 @@
build_update_request,
)
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -71,7 +75,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VCenter or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
@@ -83,7 +86,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenterCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -94,18 +97,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> AsyncI
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -117,13 +118,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("VCenterCollection", pipeline_response)
@@ -133,11 +133,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -149,10 +149,6 @@ async def get_next(next_link=None):
return AsyncItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters"
- }
-
@distributed_trace_async
async def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _models.VCenter:
"""Gets the details of a vCenter.
@@ -163,12 +159,11 @@ async def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _mode
:type fabric_name: str
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VCenter or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VCenter
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -182,23 +177,21 @@ async def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _mode
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenter] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -207,25 +200,21 @@ async def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _mode
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
async def _create_initial(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: Union[_models.AddVCenterRequest, IO],
+ add_v_center_request: Union[_models.AddVCenterRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.VCenter]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -238,7 +227,7 @@ async def _create_initial(
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[Optional[_models.VCenter]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -248,46 +237,43 @@ async def _create_initial(
else:
_json = self._serialize.body(add_v_center_request, "AddVCenterRequest")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_create(
@@ -312,14 +298,6 @@ async def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -332,7 +310,7 @@ async def begin_create(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: IO,
+ add_v_center_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -346,18 +324,10 @@ async def begin_create(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param add_v_center_request: The input to the add vCenter operation. Required.
- :type add_v_center_request: IO
+ :type add_v_center_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -370,7 +340,7 @@ async def begin_create(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: Union[_models.AddVCenterRequest, IO],
+ add_v_center_request: Union[_models.AddVCenterRequest, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.VCenter]:
"""Add vCenter.
@@ -382,20 +352,9 @@ async def begin_create(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param add_v_center_request: The input to the add vCenter operation. Is either a
- AddVCenterRequest type or a IO type. Required.
+ AddVCenterRequest type or a IO[bytes] type. Required.
:type add_v_center_request: ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequest
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -423,12 +382,13 @@ async def begin_create(
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("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -438,22 +398,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.VCenter].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return AsyncLROPoller[_models.VCenter](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- async def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, vcenter_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ async def _delete_initial(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -465,39 +421,42 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ await response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@distributed_trace_async
async def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> AsyncLROPoller[None]:
@@ -509,14 +468,6 @@ async def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any)
:type fabric_name: str
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -530,7 +481,7 @@ async def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any)
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( # type: ignore
+ raw_result = await self._delete_initial(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
api_version=api_version,
@@ -539,11 +490,12 @@ async def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any)
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs))
@@ -552,26 +504,22 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
async def _update_initial(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: Union[_models.UpdateVCenterRequest, IO],
+ update_v_center_request: Union[_models.UpdateVCenterRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.VCenter]:
- error_map = {
+ ) -> AsyncIterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -584,7 +532,7 @@ async def _update_initial(
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[Optional[_models.VCenter]] = kwargs.pop("cls", None)
+ cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -594,46 +542,43 @@ async def _update_initial(
else:
_json = self._serialize.body(update_v_center_request, "UpdateVCenterRequest")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@overload
async def begin_update(
@@ -659,14 +604,6 @@ async def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -679,7 +616,7 @@ async def begin_update(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: IO,
+ update_v_center_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -693,18 +630,10 @@ async def begin_update(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param update_v_center_request: The input to the update vCenter operation. Required.
- :type update_v_center_request: IO
+ :type update_v_center_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -717,7 +646,7 @@ async def begin_update(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: Union[_models.UpdateVCenterRequest, IO],
+ update_v_center_request: Union[_models.UpdateVCenterRequest, IO[bytes]],
**kwargs: Any
) -> AsyncLROPoller[_models.VCenter]:
"""Update vCenter operation.
@@ -729,20 +658,9 @@ async def begin_update(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param update_v_center_request: The input to the update vCenter operation. Is either a
- UpdateVCenterRequest type or a IO type. Required.
+ UpdateVCenterRequest type or a IO[bytes] type. Required.
:type update_v_center_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateVCenterRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
- this operation to not poll, or pass in your own initialized polling object for a personal
- polling strategy.
- :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateVCenterRequest or IO[bytes]
:return: An instance of AsyncLROPoller that returns either VCenter or the result of
cls(response)
:rtype:
@@ -770,12 +688,13 @@ async def begin_update(
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("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -785,17 +704,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return AsyncLROPoller.from_continuation_token(
+ return AsyncLROPoller[_models.VCenter].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return AsyncLROPoller[_models.VCenter](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> AsyncIterable["_models.VCenter"]:
@@ -803,7 +720,6 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VCenter"]:
Lists the vCenter servers registered in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VCenter or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
@@ -815,7 +731,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VCenter"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenterCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -826,17 +742,15 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.VCenter"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -848,13 +762,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("VCenterCollection", pipeline_response)
@@ -864,11 +777,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -879,7 +792,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_supported_operating_systems_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_supported_operating_systems_operations.py
index 4f37e134e22e..87c2d014d970 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_supported_operating_systems_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_supported_operating_systems_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Optional, TypeVar
from azure.core.exceptions import (
@@ -17,16 +17,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator_async import distributed_trace_async
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._supported_operating_systems_operations import build_get_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -58,12 +60,11 @@ async def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _mode
:param instance_type: The instance type. Default value is None.
:type instance_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: SupportedOperatingSystems or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.SupportedOperatingSystems
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -77,22 +78,20 @@ async def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _mode
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.SupportedOperatingSystems] = kwargs.pop("cls", None)
- request = build_get_request(
- resource_name=self._config.resource_name,
+ _request = build_get_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
instance_type=instance_type,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -101,13 +100,9 @@ async def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _mode
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("SupportedOperatingSystems", pipeline_response)
+ deserialized = self._deserialize("SupportedOperatingSystems", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationSupportedOperatingSystems"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_target_compute_sizes_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_target_compute_sizes_operations.py
index 3552bef86c07..302d8818e90a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_target_compute_sizes_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/aio/operations/_target_compute_sizes_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import AsyncHttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import AsyncHttpResponse, HttpRequest
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from ... import models as _models
-from ..._vendor import _convert_request
from ...operations._target_compute_sizes_operations import build_list_by_replication_protected_items_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
@@ -66,7 +68,6 @@ def list_by_replication_protected_items(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either TargetComputeSize or the result of cls(response)
:rtype:
~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.TargetComputeSize]
@@ -78,7 +79,7 @@ def list_by_replication_protected_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.TargetComputeSizeCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -89,20 +90,18 @@ def list_by_replication_protected_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protected_items_request(
+ _request = build_list_by_replication_protected_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protected_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -114,13 +113,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
async def extract_data(pipeline_response):
deserialized = self._deserialize("TargetComputeSizeCollection", pipeline_response)
@@ -130,11 +128,11 @@ async def extract_data(pipeline_response):
return deserialized.next_link or None, AsyncList(list_of_elem)
async def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -145,7 +143,3 @@ async def get_next(next_link=None):
return pipeline_response
return AsyncItemPaged(get_next, extract_data)
-
- list_by_replication_protected_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/__init__.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/__init__.py
index ccd11447f4a5..ecbf12c8b2b7 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/__init__.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/__init__.py
@@ -1,3 +1,4 @@
+# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5,589 +6,651 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+# pylint: disable=wrong-import-position
-from ._models_py3 import A2AAddDisksInput
-from ._models_py3 import A2AApplyRecoveryPointInput
-from ._models_py3 import A2AContainerCreationInput
-from ._models_py3 import A2AContainerMappingInput
-from ._models_py3 import A2ACreateProtectionIntentInput
-from ._models_py3 import A2ACrossClusterMigrationApplyRecoveryPointInput
-from ._models_py3 import A2ACrossClusterMigrationContainerCreationInput
-from ._models_py3 import A2ACrossClusterMigrationEnableProtectionInput
-from ._models_py3 import A2ACrossClusterMigrationPolicyCreationInput
-from ._models_py3 import A2ACrossClusterMigrationReplicationDetails
-from ._models_py3 import A2AEnableProtectionInput
-from ._models_py3 import A2AEventDetails
-from ._models_py3 import A2AExtendedLocationDetails
-from ._models_py3 import A2AFabricSpecificLocationDetails
-from ._models_py3 import A2APolicyCreationInput
-from ._models_py3 import A2APolicyDetails
-from ._models_py3 import A2AProtectedDiskDetails
-from ._models_py3 import A2AProtectedManagedDiskDetails
-from ._models_py3 import A2AProtectionContainerMappingDetails
-from ._models_py3 import A2AProtectionIntentDiskInputDetails
-from ._models_py3 import A2AProtectionIntentManagedDiskInputDetails
-from ._models_py3 import A2ARecoveryPointDetails
-from ._models_py3 import A2ARemoveDisksInput
-from ._models_py3 import A2AReplicationDetails
-from ._models_py3 import A2AReplicationIntentDetails
-from ._models_py3 import A2AReprotectInput
-from ._models_py3 import A2ASwitchProtectionInput
-from ._models_py3 import A2ATestFailoverInput
-from ._models_py3 import A2AUnplannedFailoverInput
-from ._models_py3 import A2AUnprotectedDiskDetails
-from ._models_py3 import A2AUpdateContainerMappingInput
-from ._models_py3 import A2AUpdateReplicationProtectedItemInput
-from ._models_py3 import A2AVmDiskInputDetails
-from ._models_py3 import A2AVmManagedDiskInputDetails
-from ._models_py3 import A2AVmManagedDiskUpdateDetails
-from ._models_py3 import A2AZoneDetails
-from ._models_py3 import ASRTask
-from ._models_py3 import AddDisksInput
-from ._models_py3 import AddDisksInputProperties
-from ._models_py3 import AddDisksProviderSpecificInput
-from ._models_py3 import AddRecoveryServicesProviderInput
-from ._models_py3 import AddRecoveryServicesProviderInputProperties
-from ._models_py3 import AddVCenterRequest
-from ._models_py3 import AddVCenterRequestProperties
-from ._models_py3 import AgentDetails
-from ._models_py3 import AgentDiskDetails
-from ._models_py3 import Alert
-from ._models_py3 import AlertCollection
-from ._models_py3 import AlertProperties
-from ._models_py3 import ApplianceCollection
-from ._models_py3 import ApplianceMonitoringDetails
-from ._models_py3 import ApplianceQueryParameter
-from ._models_py3 import ApplianceResourceDetails
-from ._models_py3 import ApplianceSpecificDetails
-from ._models_py3 import ApplyRecoveryPointInput
-from ._models_py3 import ApplyRecoveryPointInputProperties
-from ._models_py3 import ApplyRecoveryPointProviderSpecificInput
-from ._models_py3 import AsrJobDetails
-from ._models_py3 import AutomationRunbookTaskDetails
-from ._models_py3 import AzureFabricCreationInput
-from ._models_py3 import AzureFabricSpecificDetails
-from ._models_py3 import AzureToAzureCreateNetworkMappingInput
-from ._models_py3 import AzureToAzureNetworkMappingSettings
-from ._models_py3 import AzureToAzureUpdateNetworkMappingInput
-from ._models_py3 import AzureToAzureVmSyncedConfigDetails
-from ._models_py3 import AzureVmDiskDetails
-from ._models_py3 import ComputeSizeErrorDetails
-from ._models_py3 import ConfigurationSettings
-from ._models_py3 import ConfigureAlertRequest
-from ._models_py3 import ConfigureAlertRequestProperties
-from ._models_py3 import ConsistencyCheckTaskDetails
-from ._models_py3 import CreateNetworkMappingInput
-from ._models_py3 import CreateNetworkMappingInputProperties
-from ._models_py3 import CreatePolicyInput
-from ._models_py3 import CreatePolicyInputProperties
-from ._models_py3 import CreateProtectionContainerInput
-from ._models_py3 import CreateProtectionContainerInputProperties
-from ._models_py3 import CreateProtectionContainerMappingInput
-from ._models_py3 import CreateProtectionContainerMappingInputProperties
-from ._models_py3 import CreateProtectionIntentInput
-from ._models_py3 import CreateProtectionIntentProperties
-from ._models_py3 import CreateProtectionIntentProviderSpecificDetails
-from ._models_py3 import CreateRecoveryPlanInput
-from ._models_py3 import CreateRecoveryPlanInputProperties
-from ._models_py3 import CriticalJobHistoryDetails
-from ._models_py3 import CurrentJobDetails
-from ._models_py3 import CurrentScenarioDetails
-from ._models_py3 import DataStore
-from ._models_py3 import DataStoreUtilizationDetails
-from ._models_py3 import DisableProtectionInput
-from ._models_py3 import DisableProtectionInputProperties
-from ._models_py3 import DisableProtectionProviderSpecificInput
-from ._models_py3 import DiscoverProtectableItemRequest
-from ._models_py3 import DiscoverProtectableItemRequestProperties
-from ._models_py3 import DiskDetails
-from ._models_py3 import DiskEncryptionInfo
-from ._models_py3 import DiskEncryptionKeyInfo
-from ._models_py3 import DiskVolumeDetails
-from ._models_py3 import Display
-from ._models_py3 import DraDetails
-from ._models_py3 import EnableMigrationInput
-from ._models_py3 import EnableMigrationInputProperties
-from ._models_py3 import EnableMigrationProviderSpecificInput
-from ._models_py3 import EnableProtectionInput
-from ._models_py3 import EnableProtectionInputProperties
-from ._models_py3 import EnableProtectionProviderSpecificInput
-from ._models_py3 import EncryptionDetails
-from ._models_py3 import ErrorAdditionalInfo
-from ._models_py3 import ErrorDetail
-from ._models_py3 import ErrorResponse
-from ._models_py3 import Event
-from ._models_py3 import EventCollection
-from ._models_py3 import EventProperties
-from ._models_py3 import EventProviderSpecificDetails
-from ._models_py3 import EventQueryParameter
-from ._models_py3 import EventSpecificDetails
-from ._models_py3 import ExistingProtectionProfile
-from ._models_py3 import ExistingRecoveryAvailabilitySet
-from ._models_py3 import ExistingRecoveryProximityPlacementGroup
-from ._models_py3 import ExistingRecoveryResourceGroup
-from ._models_py3 import ExistingRecoveryVirtualNetwork
-from ._models_py3 import ExistingStorageAccount
-from ._models_py3 import ExportJobDetails
-from ._models_py3 import ExtendedLocation
-from ._models_py3 import Fabric
-from ._models_py3 import FabricCollection
-from ._models_py3 import FabricCreationInput
-from ._models_py3 import FabricCreationInputProperties
-from ._models_py3 import FabricProperties
-from ._models_py3 import FabricQueryParameter
-from ._models_py3 import FabricReplicationGroupTaskDetails
-from ._models_py3 import FabricSpecificCreateNetworkMappingInput
-from ._models_py3 import FabricSpecificCreationInput
-from ._models_py3 import FabricSpecificDetails
-from ._models_py3 import FabricSpecificUpdateNetworkMappingInput
-from ._models_py3 import FailoverJobDetails
-from ._models_py3 import FailoverProcessServerRequest
-from ._models_py3 import FailoverProcessServerRequestProperties
-from ._models_py3 import FailoverReplicationProtectedItemDetails
-from ._models_py3 import GatewayOperationDetails
-from ._models_py3 import GroupTaskDetails
-from ._models_py3 import HealthError
-from ._models_py3 import HealthErrorSummary
-from ._models_py3 import HyperVHostDetails
-from ._models_py3 import HyperVReplica2012EventDetails
-from ._models_py3 import HyperVReplica2012R2EventDetails
-from ._models_py3 import HyperVReplicaAzureApplyRecoveryPointInput
-from ._models_py3 import HyperVReplicaAzureDiskInputDetails
-from ._models_py3 import HyperVReplicaAzureEnableProtectionInput
-from ._models_py3 import HyperVReplicaAzureEventDetails
-from ._models_py3 import HyperVReplicaAzureFailbackProviderInput
-from ._models_py3 import HyperVReplicaAzureManagedDiskDetails
-from ._models_py3 import HyperVReplicaAzurePlannedFailoverProviderInput
-from ._models_py3 import HyperVReplicaAzurePolicyDetails
-from ._models_py3 import HyperVReplicaAzurePolicyInput
-from ._models_py3 import HyperVReplicaAzureReplicationDetails
-from ._models_py3 import HyperVReplicaAzureReprotectInput
-from ._models_py3 import HyperVReplicaAzureTestFailoverInput
-from ._models_py3 import HyperVReplicaAzureUnplannedFailoverInput
-from ._models_py3 import HyperVReplicaAzureUpdateReplicationProtectedItemInput
-from ._models_py3 import HyperVReplicaBaseEventDetails
-from ._models_py3 import HyperVReplicaBasePolicyDetails
-from ._models_py3 import HyperVReplicaBaseReplicationDetails
-from ._models_py3 import HyperVReplicaBluePolicyDetails
-from ._models_py3 import HyperVReplicaBluePolicyInput
-from ._models_py3 import HyperVReplicaBlueReplicationDetails
-from ._models_py3 import HyperVReplicaPolicyDetails
-from ._models_py3 import HyperVReplicaPolicyInput
-from ._models_py3 import HyperVReplicaReplicationDetails
-from ._models_py3 import HyperVSiteDetails
-from ._models_py3 import HyperVVirtualMachineDetails
-from ._models_py3 import IPConfigDetails
-from ._models_py3 import IPConfigInputDetails
-from ._models_py3 import IdentityProviderDetails
-from ._models_py3 import IdentityProviderInput
-from ._models_py3 import InMageAgentDetails
-from ._models_py3 import InMageAzureV2ApplyRecoveryPointInput
-from ._models_py3 import InMageAzureV2DiskInputDetails
-from ._models_py3 import InMageAzureV2EnableProtectionInput
-from ._models_py3 import InMageAzureV2EventDetails
-from ._models_py3 import InMageAzureV2ManagedDiskDetails
-from ._models_py3 import InMageAzureV2PolicyDetails
-from ._models_py3 import InMageAzureV2PolicyInput
-from ._models_py3 import InMageAzureV2ProtectedDiskDetails
-from ._models_py3 import InMageAzureV2RecoveryPointDetails
-from ._models_py3 import InMageAzureV2ReplicationDetails
-from ._models_py3 import InMageAzureV2ReprotectInput
-from ._models_py3 import InMageAzureV2SwitchProviderBlockingErrorDetails
-from ._models_py3 import InMageAzureV2SwitchProviderDetails
-from ._models_py3 import InMageAzureV2SwitchProviderInput
-from ._models_py3 import InMageAzureV2TestFailoverInput
-from ._models_py3 import InMageAzureV2UnplannedFailoverInput
-from ._models_py3 import InMageAzureV2UpdateReplicationProtectedItemInput
-from ._models_py3 import InMageBasePolicyDetails
-from ._models_py3 import InMageDisableProtectionProviderSpecificInput
-from ._models_py3 import InMageDiskDetails
-from ._models_py3 import InMageDiskExclusionInput
-from ._models_py3 import InMageDiskSignatureExclusionOptions
-from ._models_py3 import InMageEnableProtectionInput
-from ._models_py3 import InMageFabricSwitchProviderBlockingErrorDetails
-from ._models_py3 import InMagePolicyDetails
-from ._models_py3 import InMagePolicyInput
-from ._models_py3 import InMageProtectedDiskDetails
-from ._models_py3 import InMageRcmAgentUpgradeBlockingErrorDetails
-from ._models_py3 import InMageRcmApplianceDetails
-from ._models_py3 import InMageRcmApplianceSpecificDetails
-from ._models_py3 import InMageRcmApplyRecoveryPointInput
-from ._models_py3 import InMageRcmDiscoveredProtectedVmDetails
-from ._models_py3 import InMageRcmDiskInput
-from ._models_py3 import InMageRcmDisksDefaultInput
-from ._models_py3 import InMageRcmEnableProtectionInput
-from ._models_py3 import InMageRcmEventDetails
-from ._models_py3 import InMageRcmFabricCreationInput
-from ._models_py3 import InMageRcmFabricSpecificDetails
-from ._models_py3 import InMageRcmFabricSwitchProviderBlockingErrorDetails
-from ._models_py3 import InMageRcmFailbackDiscoveredProtectedVmDetails
-from ._models_py3 import InMageRcmFailbackEventDetails
-from ._models_py3 import InMageRcmFailbackMobilityAgentDetails
-from ._models_py3 import InMageRcmFailbackNicDetails
-from ._models_py3 import InMageRcmFailbackPlannedFailoverProviderInput
-from ._models_py3 import InMageRcmFailbackPolicyCreationInput
-from ._models_py3 import InMageRcmFailbackPolicyDetails
-from ._models_py3 import InMageRcmFailbackProtectedDiskDetails
-from ._models_py3 import InMageRcmFailbackReplicationDetails
-from ._models_py3 import InMageRcmFailbackReprotectInput
-from ._models_py3 import InMageRcmFailbackSyncDetails
-from ._models_py3 import InMageRcmLastAgentUpgradeErrorDetails
-from ._models_py3 import InMageRcmMobilityAgentDetails
-from ._models_py3 import InMageRcmNicDetails
-from ._models_py3 import InMageRcmNicInput
-from ._models_py3 import InMageRcmPolicyCreationInput
-from ._models_py3 import InMageRcmPolicyDetails
-from ._models_py3 import InMageRcmProtectedDiskDetails
-from ._models_py3 import InMageRcmProtectionContainerMappingDetails
-from ._models_py3 import InMageRcmRecoveryPointDetails
-from ._models_py3 import InMageRcmReplicationDetails
-from ._models_py3 import InMageRcmReprotectInput
-from ._models_py3 import InMageRcmSyncDetails
-from ._models_py3 import InMageRcmTestFailoverInput
-from ._models_py3 import InMageRcmUnplannedFailoverInput
-from ._models_py3 import InMageRcmUpdateApplianceForReplicationProtectedItemInput
-from ._models_py3 import InMageRcmUpdateContainerMappingInput
-from ._models_py3 import InMageRcmUpdateReplicationProtectedItemInput
-from ._models_py3 import InMageReplicationDetails
-from ._models_py3 import InMageReprotectInput
-from ._models_py3 import InMageTestFailoverInput
-from ._models_py3 import InMageUnplannedFailoverInput
-from ._models_py3 import InMageVolumeExclusionOptions
-from ._models_py3 import InconsistentVmDetails
-from ._models_py3 import InitialReplicationDetails
-from ._models_py3 import InlineWorkflowTaskDetails
-from ._models_py3 import InnerHealthError
-from ._models_py3 import InputEndpoint
-from ._models_py3 import Job
-from ._models_py3 import JobCollection
-from ._models_py3 import JobDetails
-from ._models_py3 import JobEntity
-from ._models_py3 import JobErrorDetails
-from ._models_py3 import JobProperties
-from ._models_py3 import JobQueryParameter
-from ._models_py3 import JobStatusEventDetails
-from ._models_py3 import JobTaskDetails
-from ._models_py3 import KeyEncryptionKeyInfo
-from ._models_py3 import LogicalNetwork
-from ._models_py3 import LogicalNetworkCollection
-from ._models_py3 import LogicalNetworkProperties
-from ._models_py3 import ManualActionTaskDetails
-from ._models_py3 import MarsAgentDetails
-from ._models_py3 import MasterTargetServer
-from ._models_py3 import MigrateInput
-from ._models_py3 import MigrateInputProperties
-from ._models_py3 import MigrateProviderSpecificInput
-from ._models_py3 import MigrationItem
-from ._models_py3 import MigrationItemCollection
-from ._models_py3 import MigrationItemProperties
-from ._models_py3 import MigrationItemsQueryParameter
-from ._models_py3 import MigrationProviderSpecificSettings
-from ._models_py3 import MigrationRecoveryPoint
-from ._models_py3 import MigrationRecoveryPointCollection
-from ._models_py3 import MigrationRecoveryPointProperties
-from ._models_py3 import MobilityServiceUpdate
-from ._models_py3 import Network
-from ._models_py3 import NetworkCollection
-from ._models_py3 import NetworkMapping
-from ._models_py3 import NetworkMappingCollection
-from ._models_py3 import NetworkMappingFabricSpecificSettings
-from ._models_py3 import NetworkMappingProperties
-from ._models_py3 import NetworkProperties
-from ._models_py3 import NewProtectionProfile
-from ._models_py3 import NewRecoveryVirtualNetwork
-from ._models_py3 import OSDetails
-from ._models_py3 import OSDiskDetails
-from ._models_py3 import OSUpgradeSupportedVersions
-from ._models_py3 import OSVersionWrapper
-from ._models_py3 import OperationsDiscovery
-from ._models_py3 import OperationsDiscoveryCollection
-from ._models_py3 import PauseReplicationInput
-from ._models_py3 import PauseReplicationInputProperties
-from ._models_py3 import PlannedFailoverInput
-from ._models_py3 import PlannedFailoverInputProperties
-from ._models_py3 import PlannedFailoverProviderSpecificFailoverInput
-from ._models_py3 import Policy
-from ._models_py3 import PolicyCollection
-from ._models_py3 import PolicyProperties
-from ._models_py3 import PolicyProviderSpecificDetails
-from ._models_py3 import PolicyProviderSpecificInput
-from ._models_py3 import ProcessServer
-from ._models_py3 import ProcessServerDetails
-from ._models_py3 import ProtectableItem
-from ._models_py3 import ProtectableItemCollection
-from ._models_py3 import ProtectableItemProperties
-from ._models_py3 import ProtectableItemQueryParameter
-from ._models_py3 import ProtectedItemsQueryParameter
-from ._models_py3 import ProtectionContainer
-from ._models_py3 import ProtectionContainerCollection
-from ._models_py3 import ProtectionContainerFabricSpecificDetails
-from ._models_py3 import ProtectionContainerMapping
-from ._models_py3 import ProtectionContainerMappingCollection
-from ._models_py3 import ProtectionContainerMappingProperties
-from ._models_py3 import ProtectionContainerMappingProviderSpecificDetails
-from ._models_py3 import ProtectionContainerProperties
-from ._models_py3 import ProtectionProfileCustomDetails
-from ._models_py3 import ProviderError
-from ._models_py3 import ProviderSpecificRecoveryPointDetails
-from ._models_py3 import PushInstallerDetails
-from ._models_py3 import RcmProxyDetails
-from ._models_py3 import RecoveryAvailabilitySetCustomDetails
-from ._models_py3 import RecoveryPlan
-from ._models_py3 import RecoveryPlanA2ADetails
-from ._models_py3 import RecoveryPlanA2AFailoverInput
-from ._models_py3 import RecoveryPlanA2AInput
-from ._models_py3 import RecoveryPlanAction
-from ._models_py3 import RecoveryPlanActionDetails
-from ._models_py3 import RecoveryPlanAutomationRunbookActionDetails
-from ._models_py3 import RecoveryPlanCollection
-from ._models_py3 import RecoveryPlanGroup
-from ._models_py3 import RecoveryPlanGroupTaskDetails
-from ._models_py3 import RecoveryPlanHyperVReplicaAzureFailbackInput
-from ._models_py3 import RecoveryPlanHyperVReplicaAzureFailoverInput
-from ._models_py3 import RecoveryPlanInMageAzureV2FailoverInput
-from ._models_py3 import RecoveryPlanInMageFailoverInput
-from ._models_py3 import RecoveryPlanInMageRcmFailbackFailoverInput
-from ._models_py3 import RecoveryPlanInMageRcmFailoverInput
-from ._models_py3 import RecoveryPlanManualActionDetails
-from ._models_py3 import RecoveryPlanPlannedFailoverInput
-from ._models_py3 import RecoveryPlanPlannedFailoverInputProperties
-from ._models_py3 import RecoveryPlanProperties
-from ._models_py3 import RecoveryPlanProtectedItem
-from ._models_py3 import RecoveryPlanProviderSpecificDetails
-from ._models_py3 import RecoveryPlanProviderSpecificFailoverInput
-from ._models_py3 import RecoveryPlanProviderSpecificInput
-from ._models_py3 import RecoveryPlanScriptActionDetails
-from ._models_py3 import RecoveryPlanShutdownGroupTaskDetails
-from ._models_py3 import RecoveryPlanTestFailoverCleanupInput
-from ._models_py3 import RecoveryPlanTestFailoverCleanupInputProperties
-from ._models_py3 import RecoveryPlanTestFailoverInput
-from ._models_py3 import RecoveryPlanTestFailoverInputProperties
-from ._models_py3 import RecoveryPlanUnplannedFailoverInput
-from ._models_py3 import RecoveryPlanUnplannedFailoverInputProperties
-from ._models_py3 import RecoveryPoint
-from ._models_py3 import RecoveryPointCollection
-from ._models_py3 import RecoveryPointProperties
-from ._models_py3 import RecoveryProximityPlacementGroupCustomDetails
-from ._models_py3 import RecoveryResourceGroupCustomDetails
-from ._models_py3 import RecoveryServicesProvider
-from ._models_py3 import RecoveryServicesProviderCollection
-from ._models_py3 import RecoveryServicesProviderProperties
-from ._models_py3 import RecoveryVirtualNetworkCustomDetails
-from ._models_py3 import RemoveDisksInput
-from ._models_py3 import RemoveDisksInputProperties
-from ._models_py3 import RemoveDisksProviderSpecificInput
-from ._models_py3 import RemoveProtectionContainerMappingInput
-from ._models_py3 import RemoveProtectionContainerMappingInputProperties
-from ._models_py3 import RenewCertificateInput
-from ._models_py3 import RenewCertificateInputProperties
-from ._models_py3 import ReplicationAgentDetails
-from ._models_py3 import ReplicationAppliance
-from ._models_py3 import ReplicationApplianceProperties
-from ._models_py3 import ReplicationEligibilityResults
-from ._models_py3 import ReplicationEligibilityResultsCollection
-from ._models_py3 import ReplicationEligibilityResultsErrorInfo
-from ._models_py3 import ReplicationEligibilityResultsProperties
-from ._models_py3 import ReplicationGroupDetails
-from ._models_py3 import ReplicationProtectedItem
-from ._models_py3 import ReplicationProtectedItemCollection
-from ._models_py3 import ReplicationProtectedItemProperties
-from ._models_py3 import ReplicationProtectionIntent
-from ._models_py3 import ReplicationProtectionIntentCollection
-from ._models_py3 import ReplicationProtectionIntentProperties
-from ._models_py3 import ReplicationProtectionIntentProviderSpecificSettings
-from ._models_py3 import ReplicationProviderContainerUnmappingInput
-from ._models_py3 import ReplicationProviderSpecificContainerCreationInput
-from ._models_py3 import ReplicationProviderSpecificContainerMappingInput
-from ._models_py3 import ReplicationProviderSpecificSettings
-from ._models_py3 import ReplicationProviderSpecificUpdateContainerMappingInput
-from ._models_py3 import ReprotectAgentDetails
-from ._models_py3 import ResolveHealthError
-from ._models_py3 import ResolveHealthInput
-from ._models_py3 import ResolveHealthInputProperties
-from ._models_py3 import Resource
-from ._models_py3 import ResourceHealthSummary
-from ._models_py3 import ResumeJobParams
-from ._models_py3 import ResumeJobParamsProperties
-from ._models_py3 import ResumeReplicationInput
-from ._models_py3 import ResumeReplicationInputProperties
-from ._models_py3 import ResumeReplicationProviderSpecificInput
-from ._models_py3 import ResyncInput
-from ._models_py3 import ResyncInputProperties
-from ._models_py3 import ResyncProviderSpecificInput
-from ._models_py3 import RetentionVolume
-from ._models_py3 import ReverseReplicationInput
-from ._models_py3 import ReverseReplicationInputProperties
-from ._models_py3 import ReverseReplicationProviderSpecificInput
-from ._models_py3 import RoleAssignment
-from ._models_py3 import RunAsAccount
-from ._models_py3 import ScriptActionTaskDetails
-from ._models_py3 import ServiceError
-from ._models_py3 import StorageAccountCustomDetails
-from ._models_py3 import StorageClassification
-from ._models_py3 import StorageClassificationCollection
-from ._models_py3 import StorageClassificationMapping
-from ._models_py3 import StorageClassificationMappingCollection
-from ._models_py3 import StorageClassificationMappingInput
-from ._models_py3 import StorageClassificationMappingProperties
-from ._models_py3 import StorageClassificationProperties
-from ._models_py3 import StorageMappingInputProperties
-from ._models_py3 import Subnet
-from ._models_py3 import SupportedOSDetails
-from ._models_py3 import SupportedOSProperties
-from ._models_py3 import SupportedOSProperty
-from ._models_py3 import SupportedOperatingSystems
-from ._models_py3 import SwitchProtectionInput
-from ._models_py3 import SwitchProtectionInputProperties
-from ._models_py3 import SwitchProtectionJobDetails
-from ._models_py3 import SwitchProtectionProviderSpecificInput
-from ._models_py3 import SwitchProviderInput
-from ._models_py3 import SwitchProviderInputProperties
-from ._models_py3 import SwitchProviderSpecificInput
-from ._models_py3 import TargetComputeSize
-from ._models_py3 import TargetComputeSizeCollection
-from ._models_py3 import TargetComputeSizeProperties
-from ._models_py3 import TaskTypeDetails
-from ._models_py3 import TestFailoverCleanupInput
-from ._models_py3 import TestFailoverCleanupInputProperties
-from ._models_py3 import TestFailoverInput
-from ._models_py3 import TestFailoverInputProperties
-from ._models_py3 import TestFailoverJobDetails
-from ._models_py3 import TestFailoverProviderSpecificInput
-from ._models_py3 import TestMigrateCleanupInput
-from ._models_py3 import TestMigrateCleanupInputProperties
-from ._models_py3 import TestMigrateInput
-from ._models_py3 import TestMigrateInputProperties
-from ._models_py3 import TestMigrateProviderSpecificInput
-from ._models_py3 import UnplannedFailoverInput
-from ._models_py3 import UnplannedFailoverInputProperties
-from ._models_py3 import UnplannedFailoverProviderSpecificInput
-from ._models_py3 import UpdateApplianceForReplicationProtectedItemInput
-from ._models_py3 import UpdateApplianceForReplicationProtectedItemInputProperties
-from ._models_py3 import UpdateApplianceForReplicationProtectedItemProviderSpecificInput
-from ._models_py3 import UpdateDiskInput
-from ._models_py3 import UpdateMigrationItemInput
-from ._models_py3 import UpdateMigrationItemInputProperties
-from ._models_py3 import UpdateMigrationItemProviderSpecificInput
-from ._models_py3 import UpdateMobilityServiceRequest
-from ._models_py3 import UpdateMobilityServiceRequestProperties
-from ._models_py3 import UpdateNetworkMappingInput
-from ._models_py3 import UpdateNetworkMappingInputProperties
-from ._models_py3 import UpdatePolicyInput
-from ._models_py3 import UpdatePolicyInputProperties
-from ._models_py3 import UpdateProtectionContainerMappingInput
-from ._models_py3 import UpdateProtectionContainerMappingInputProperties
-from ._models_py3 import UpdateRecoveryPlanInput
-from ._models_py3 import UpdateRecoveryPlanInputProperties
-from ._models_py3 import UpdateReplicationProtectedItemInput
-from ._models_py3 import UpdateReplicationProtectedItemInputProperties
-from ._models_py3 import UpdateReplicationProtectedItemProviderInput
-from ._models_py3 import UpdateVCenterRequest
-from ._models_py3 import UpdateVCenterRequestProperties
-from ._models_py3 import VCenter
-from ._models_py3 import VCenterCollection
-from ._models_py3 import VCenterProperties
-from ._models_py3 import VMNicDetails
-from ._models_py3 import VMNicInputDetails
-from ._models_py3 import VMwareCbtContainerCreationInput
-from ._models_py3 import VMwareCbtContainerMappingInput
-from ._models_py3 import VMwareCbtDiskInput
-from ._models_py3 import VMwareCbtEnableMigrationInput
-from ._models_py3 import VMwareCbtEventDetails
-from ._models_py3 import VMwareCbtMigrateInput
-from ._models_py3 import VMwareCbtMigrationDetails
-from ._models_py3 import VMwareCbtNicDetails
-from ._models_py3 import VMwareCbtNicInput
-from ._models_py3 import VMwareCbtPolicyCreationInput
-from ._models_py3 import VMwareCbtProtectedDiskDetails
-from ._models_py3 import VMwareCbtProtectionContainerMappingDetails
-from ._models_py3 import VMwareCbtResumeReplicationInput
-from ._models_py3 import VMwareCbtResyncInput
-from ._models_py3 import VMwareCbtSecurityProfileProperties
-from ._models_py3 import VMwareCbtTestMigrateInput
-from ._models_py3 import VMwareCbtUpdateDiskInput
-from ._models_py3 import VMwareCbtUpdateMigrationItemInput
-from ._models_py3 import VMwareDetails
-from ._models_py3 import VMwareV2FabricCreationInput
-from ._models_py3 import VMwareV2FabricSpecificDetails
-from ._models_py3 import VMwareVirtualMachineDetails
-from ._models_py3 import VaultHealthDetails
-from ._models_py3 import VaultHealthProperties
-from ._models_py3 import VaultSetting
-from ._models_py3 import VaultSettingCollection
-from ._models_py3 import VaultSettingCreationInput
-from ._models_py3 import VaultSettingCreationInputProperties
-from ._models_py3 import VaultSettingProperties
-from ._models_py3 import VersionDetails
-from ._models_py3 import VirtualMachineTaskDetails
-from ._models_py3 import VmNicUpdatesTaskDetails
-from ._models_py3 import VmmDetails
-from ._models_py3 import VmmToAzureCreateNetworkMappingInput
-from ._models_py3 import VmmToAzureNetworkMappingSettings
-from ._models_py3 import VmmToAzureUpdateNetworkMappingInput
-from ._models_py3 import VmmToVmmCreateNetworkMappingInput
-from ._models_py3 import VmmToVmmNetworkMappingSettings
-from ._models_py3 import VmmToVmmUpdateNetworkMappingInput
-from ._models_py3 import VmmVirtualMachineDetails
-from ._models_py3 import VmwareCbtPolicyDetails
+from typing import TYPE_CHECKING
-from ._site_recovery_management_client_enums import A2ARecoveryAvailabilityType
-from ._site_recovery_management_client_enums import A2ARpRecoveryPointType
-from ._site_recovery_management_client_enums import AgentAutoUpdateStatus
-from ._site_recovery_management_client_enums import AgentUpgradeBlockedReason
-from ._site_recovery_management_client_enums import AgentVersionStatus
-from ._site_recovery_management_client_enums import AlternateLocationRecoveryOption
-from ._site_recovery_management_client_enums import AutoProtectionOfDataDisk
-from ._site_recovery_management_client_enums import AutomationAccountAuthenticationType
-from ._site_recovery_management_client_enums import ChurnOptionSelected
-from ._site_recovery_management_client_enums import DataSyncStatus
-from ._site_recovery_management_client_enums import DisableProtectionReason
-from ._site_recovery_management_client_enums import DiskAccountType
-from ._site_recovery_management_client_enums import DiskReplicationProgressHealth
-from ._site_recovery_management_client_enums import EthernetAddressType
-from ._site_recovery_management_client_enums import ExportJobOutputSerializationType
-from ._site_recovery_management_client_enums import ExtendedLocationType
-from ._site_recovery_management_client_enums import FailoverDeploymentModel
-from ._site_recovery_management_client_enums import HealthErrorCategory
-from ._site_recovery_management_client_enums import HealthErrorCustomerResolvability
-from ._site_recovery_management_client_enums import HyperVReplicaAzureRpRecoveryPointType
-from ._site_recovery_management_client_enums import InMageRcmFailbackRecoveryPointType
-from ._site_recovery_management_client_enums import InMageV2RpRecoveryPointType
-from ._site_recovery_management_client_enums import LicenseType
-from ._site_recovery_management_client_enums import MigrationItemOperation
-from ._site_recovery_management_client_enums import MigrationRecoveryPointType
-from ._site_recovery_management_client_enums import MigrationState
-from ._site_recovery_management_client_enums import MobilityAgentUpgradeState
-from ._site_recovery_management_client_enums import MultiVmGroupCreateOption
-from ._site_recovery_management_client_enums import MultiVmSyncPointOption
-from ._site_recovery_management_client_enums import PlannedFailoverStatus
-from ._site_recovery_management_client_enums import PossibleOperationsDirections
-from ._site_recovery_management_client_enums import PresenceStatus
-from ._site_recovery_management_client_enums import ProtectionHealth
-from ._site_recovery_management_client_enums import RcmComponentStatus
-from ._site_recovery_management_client_enums import RecoveryPlanActionLocation
-from ._site_recovery_management_client_enums import RecoveryPlanGroupType
-from ._site_recovery_management_client_enums import RecoveryPlanPointType
-from ._site_recovery_management_client_enums import RecoveryPointSyncType
-from ._site_recovery_management_client_enums import RecoveryPointType
-from ._site_recovery_management_client_enums import ReplicationProtectedItemOperation
-from ._site_recovery_management_client_enums import ResyncState
-from ._site_recovery_management_client_enums import RpInMageRecoveryPointType
-from ._site_recovery_management_client_enums import SecurityType
-from ._site_recovery_management_client_enums import SetMultiVmSyncStatus
-from ._site_recovery_management_client_enums import Severity
-from ._site_recovery_management_client_enums import SourceSiteOperations
-from ._site_recovery_management_client_enums import SqlServerLicenseType
-from ._site_recovery_management_client_enums import TestMigrationState
-from ._site_recovery_management_client_enums import VmEncryptionType
-from ._site_recovery_management_client_enums import VmReplicationProgressHealth
+if TYPE_CHECKING:
+ from ._patch import * # pylint: disable=unused-wildcard-import
+
+
+from ._models_py3 import ( # type: ignore
+ A2AAddDisksInput,
+ A2AApplyClusterRecoveryPointInput,
+ A2AApplyRecoveryPointInput,
+ A2AClusterRecoveryPointDetails,
+ A2AClusterTestFailoverInput,
+ A2AClusterUnplannedFailoverInput,
+ A2AContainerCreationInput,
+ A2AContainerMappingInput,
+ A2ACreateProtectionIntentInput,
+ A2ACrossClusterMigrationApplyRecoveryPointInput,
+ A2ACrossClusterMigrationContainerCreationInput,
+ A2ACrossClusterMigrationEnableProtectionInput,
+ A2ACrossClusterMigrationPolicyCreationInput,
+ A2ACrossClusterMigrationReplicationDetails,
+ A2AEnableProtectionInput,
+ A2AEventDetails,
+ A2AExtendedLocationDetails,
+ A2AFabricSpecificLocationDetails,
+ A2APolicyCreationInput,
+ A2APolicyDetails,
+ A2AProtectedDiskDetails,
+ A2AProtectedItemDetail,
+ A2AProtectedManagedDiskDetails,
+ A2AProtectionContainerMappingDetails,
+ A2AProtectionIntentDiskInputDetails,
+ A2AProtectionIntentManagedDiskInputDetails,
+ A2ARecoveryPointDetails,
+ A2ARemoveDisksInput,
+ A2AReplicationDetails,
+ A2AReplicationIntentDetails,
+ A2AReplicationProtectionClusterDetails,
+ A2AReprotectInput,
+ A2ASharedDiskIRErrorDetails,
+ A2ASharedDiskReplicationDetails,
+ A2ASwitchClusterProtectionInput,
+ A2ASwitchProtectionInput,
+ A2ATestFailoverInput,
+ A2AUnplannedFailoverInput,
+ A2AUnprotectedDiskDetails,
+ A2AUpdateContainerMappingInput,
+ A2AUpdateReplicationProtectedItemInput,
+ A2AVmDiskInputDetails,
+ A2AVmManagedDiskInputDetails,
+ A2AVmManagedDiskUpdateDetails,
+ A2AZoneDetails,
+ ASRTask,
+ AddDisksInput,
+ AddDisksInputProperties,
+ AddDisksProviderSpecificInput,
+ AddRecoveryServicesProviderInput,
+ AddRecoveryServicesProviderInputProperties,
+ AddVCenterRequest,
+ AddVCenterRequestProperties,
+ AgentDetails,
+ AgentDiskDetails,
+ Alert,
+ AlertCollection,
+ AlertProperties,
+ ApplianceCollection,
+ ApplianceMonitoringDetails,
+ ApplianceQueryParameter,
+ ApplianceResourceDetails,
+ ApplianceSpecificDetails,
+ ApplyClusterRecoveryPointInput,
+ ApplyClusterRecoveryPointInputProperties,
+ ApplyClusterRecoveryPointProviderSpecificInput,
+ ApplyRecoveryPointInput,
+ ApplyRecoveryPointInputProperties,
+ ApplyRecoveryPointProviderSpecificInput,
+ AsrJobDetails,
+ AutomationRunbookTaskDetails,
+ AzureFabricCreationInput,
+ AzureFabricSpecificDetails,
+ AzureToAzureCreateNetworkMappingInput,
+ AzureToAzureNetworkMappingSettings,
+ AzureToAzureUpdateNetworkMappingInput,
+ AzureToAzureVmSyncedConfigDetails,
+ AzureVmDiskDetails,
+ ClusterFailoverJobDetails,
+ ClusterProviderSpecificRecoveryPointDetails,
+ ClusterRecoveryPoint,
+ ClusterRecoveryPointCollection,
+ ClusterRecoveryPointProperties,
+ ClusterSwitchProtectionJobDetails,
+ ClusterTestFailoverCleanupInput,
+ ClusterTestFailoverCleanupInputProperties,
+ ClusterTestFailoverInput,
+ ClusterTestFailoverInputProperties,
+ ClusterTestFailoverJobDetails,
+ ClusterTestFailoverProviderSpecificInput,
+ ClusterUnplannedFailoverInput,
+ ClusterUnplannedFailoverInputProperties,
+ ClusterUnplannedFailoverProviderSpecificInput,
+ ComputeSizeErrorDetails,
+ ConfigurationSettings,
+ ConfigureAlertRequest,
+ ConfigureAlertRequestProperties,
+ ConsistencyCheckTaskDetails,
+ CreateNetworkMappingInput,
+ CreateNetworkMappingInputProperties,
+ CreatePolicyInput,
+ CreatePolicyInputProperties,
+ CreateProtectionContainerInput,
+ CreateProtectionContainerInputProperties,
+ CreateProtectionContainerMappingInput,
+ CreateProtectionContainerMappingInputProperties,
+ CreateProtectionIntentInput,
+ CreateProtectionIntentProperties,
+ CreateProtectionIntentProviderSpecificDetails,
+ CreateRecoveryPlanInput,
+ CreateRecoveryPlanInputProperties,
+ CriticalJobHistoryDetails,
+ CurrentJobDetails,
+ CurrentScenarioDetails,
+ DataStore,
+ DataStoreUtilizationDetails,
+ DisableProtectionInput,
+ DisableProtectionInputProperties,
+ DisableProtectionProviderSpecificInput,
+ DiscoverProtectableItemRequest,
+ DiscoverProtectableItemRequestProperties,
+ DiskDetails,
+ DiskEncryptionInfo,
+ DiskEncryptionKeyInfo,
+ DiskVolumeDetails,
+ Display,
+ DraDetails,
+ EnableMigrationInput,
+ EnableMigrationInputProperties,
+ EnableMigrationProviderSpecificInput,
+ EnableProtectionInput,
+ EnableProtectionInputProperties,
+ EnableProtectionProviderSpecificInput,
+ EncryptionDetails,
+ ErrorAdditionalInfo,
+ ErrorDetail,
+ ErrorResponse,
+ Event,
+ EventCollection,
+ EventProperties,
+ EventProviderSpecificDetails,
+ EventQueryParameter,
+ EventSpecificDetails,
+ ExistingProtectionProfile,
+ ExistingRecoveryAvailabilitySet,
+ ExistingRecoveryProximityPlacementGroup,
+ ExistingRecoveryResourceGroup,
+ ExistingRecoveryVirtualNetwork,
+ ExistingStorageAccount,
+ ExportJobDetails,
+ ExtendedLocation,
+ Fabric,
+ FabricCollection,
+ FabricCreationInput,
+ FabricCreationInputProperties,
+ FabricProperties,
+ FabricQueryParameter,
+ FabricReplicationGroupTaskDetails,
+ FabricSpecificCreateNetworkMappingInput,
+ FabricSpecificCreationInput,
+ FabricSpecificDetails,
+ FabricSpecificUpdateNetworkMappingInput,
+ FailoverJobDetails,
+ FailoverProcessServerRequest,
+ FailoverProcessServerRequestProperties,
+ FailoverReplicationProtectedItemDetails,
+ GatewayOperationDetails,
+ GroupTaskDetails,
+ HealthError,
+ HealthErrorSummary,
+ HyperVHostDetails,
+ HyperVReplica2012EventDetails,
+ HyperVReplica2012R2EventDetails,
+ HyperVReplicaAzureApplyRecoveryPointInput,
+ HyperVReplicaAzureDiskInputDetails,
+ HyperVReplicaAzureEnableProtectionInput,
+ HyperVReplicaAzureEventDetails,
+ HyperVReplicaAzureFailbackProviderInput,
+ HyperVReplicaAzureManagedDiskDetails,
+ HyperVReplicaAzurePlannedFailoverProviderInput,
+ HyperVReplicaAzurePolicyDetails,
+ HyperVReplicaAzurePolicyInput,
+ HyperVReplicaAzureReplicationDetails,
+ HyperVReplicaAzureReprotectInput,
+ HyperVReplicaAzureTestFailoverInput,
+ HyperVReplicaAzureUnplannedFailoverInput,
+ HyperVReplicaAzureUpdateReplicationProtectedItemInput,
+ HyperVReplicaBaseEventDetails,
+ HyperVReplicaBasePolicyDetails,
+ HyperVReplicaBaseReplicationDetails,
+ HyperVReplicaBluePolicyDetails,
+ HyperVReplicaBluePolicyInput,
+ HyperVReplicaBlueReplicationDetails,
+ HyperVReplicaPolicyDetails,
+ HyperVReplicaPolicyInput,
+ HyperVReplicaReplicationDetails,
+ HyperVSiteDetails,
+ HyperVVirtualMachineDetails,
+ IPConfigDetails,
+ IPConfigInputDetails,
+ IdentityProviderDetails,
+ IdentityProviderInput,
+ InMageAgentDetails,
+ InMageAzureV2ApplyRecoveryPointInput,
+ InMageAzureV2DiskInputDetails,
+ InMageAzureV2EnableProtectionInput,
+ InMageAzureV2EventDetails,
+ InMageAzureV2ManagedDiskDetails,
+ InMageAzureV2PolicyDetails,
+ InMageAzureV2PolicyInput,
+ InMageAzureV2ProtectedDiskDetails,
+ InMageAzureV2RecoveryPointDetails,
+ InMageAzureV2ReplicationDetails,
+ InMageAzureV2ReprotectInput,
+ InMageAzureV2SwitchProviderBlockingErrorDetails,
+ InMageAzureV2SwitchProviderDetails,
+ InMageAzureV2SwitchProviderInput,
+ InMageAzureV2TestFailoverInput,
+ InMageAzureV2UnplannedFailoverInput,
+ InMageAzureV2UpdateReplicationProtectedItemInput,
+ InMageBasePolicyDetails,
+ InMageDisableProtectionProviderSpecificInput,
+ InMageDiskDetails,
+ InMageDiskExclusionInput,
+ InMageDiskSignatureExclusionOptions,
+ InMageEnableProtectionInput,
+ InMageFabricSwitchProviderBlockingErrorDetails,
+ InMagePolicyDetails,
+ InMagePolicyInput,
+ InMageProtectedDiskDetails,
+ InMageRcmAddDisksInput,
+ InMageRcmAgentUpgradeBlockingErrorDetails,
+ InMageRcmApplianceDetails,
+ InMageRcmApplianceSpecificDetails,
+ InMageRcmApplyRecoveryPointInput,
+ InMageRcmDiscoveredProtectedVmDetails,
+ InMageRcmDiskInput,
+ InMageRcmDisksDefaultInput,
+ InMageRcmEnableProtectionInput,
+ InMageRcmEventDetails,
+ InMageRcmFabricCreationInput,
+ InMageRcmFabricSpecificDetails,
+ InMageRcmFabricSwitchProviderBlockingErrorDetails,
+ InMageRcmFailbackDiscoveredProtectedVmDetails,
+ InMageRcmFailbackEventDetails,
+ InMageRcmFailbackMobilityAgentDetails,
+ InMageRcmFailbackNicDetails,
+ InMageRcmFailbackPlannedFailoverProviderInput,
+ InMageRcmFailbackPolicyCreationInput,
+ InMageRcmFailbackPolicyDetails,
+ InMageRcmFailbackProtectedDiskDetails,
+ InMageRcmFailbackReplicationDetails,
+ InMageRcmFailbackReprotectInput,
+ InMageRcmFailbackSyncDetails,
+ InMageRcmLastAgentUpgradeErrorDetails,
+ InMageRcmMobilityAgentDetails,
+ InMageRcmNicDetails,
+ InMageRcmNicInput,
+ InMageRcmPolicyCreationInput,
+ InMageRcmPolicyDetails,
+ InMageRcmProtectedDiskDetails,
+ InMageRcmProtectionContainerMappingDetails,
+ InMageRcmRecoveryPointDetails,
+ InMageRcmReplicationDetails,
+ InMageRcmReprotectInput,
+ InMageRcmSyncDetails,
+ InMageRcmTestFailoverInput,
+ InMageRcmUnProtectedDiskDetails,
+ InMageRcmUnplannedFailoverInput,
+ InMageRcmUpdateApplianceForReplicationProtectedItemInput,
+ InMageRcmUpdateContainerMappingInput,
+ InMageRcmUpdateReplicationProtectedItemInput,
+ InMageReplicationDetails,
+ InMageReprotectInput,
+ InMageTestFailoverInput,
+ InMageUnplannedFailoverInput,
+ InMageVolumeExclusionOptions,
+ InconsistentVmDetails,
+ InitialReplicationDetails,
+ InlineWorkflowTaskDetails,
+ InnerHealthError,
+ InputEndpoint,
+ Job,
+ JobCollection,
+ JobDetails,
+ JobEntity,
+ JobErrorDetails,
+ JobProperties,
+ JobQueryParameter,
+ JobStatusEventDetails,
+ JobTaskDetails,
+ KeyEncryptionKeyInfo,
+ LogicalNetwork,
+ LogicalNetworkCollection,
+ LogicalNetworkProperties,
+ ManagedRunCommandScriptInput,
+ ManualActionTaskDetails,
+ MarsAgentDetails,
+ MasterTargetServer,
+ MigrateInput,
+ MigrateInputProperties,
+ MigrateProviderSpecificInput,
+ MigrationItem,
+ MigrationItemCollection,
+ MigrationItemProperties,
+ MigrationItemsQueryParameter,
+ MigrationProviderSpecificSettings,
+ MigrationRecoveryPoint,
+ MigrationRecoveryPointCollection,
+ MigrationRecoveryPointProperties,
+ MobilityServiceUpdate,
+ Network,
+ NetworkCollection,
+ NetworkMapping,
+ NetworkMappingCollection,
+ NetworkMappingFabricSpecificSettings,
+ NetworkMappingProperties,
+ NetworkProperties,
+ NewProtectionProfile,
+ NewRecoveryVirtualNetwork,
+ OSDetails,
+ OSDiskDetails,
+ OSUpgradeSupportedVersions,
+ OSVersionWrapper,
+ OperationsDiscovery,
+ OperationsDiscoveryCollection,
+ PauseReplicationInput,
+ PauseReplicationInputProperties,
+ PlannedFailoverInput,
+ PlannedFailoverInputProperties,
+ PlannedFailoverProviderSpecificFailoverInput,
+ Policy,
+ PolicyCollection,
+ PolicyProperties,
+ PolicyProviderSpecificDetails,
+ PolicyProviderSpecificInput,
+ ProcessServer,
+ ProcessServerDetails,
+ ProtectableItem,
+ ProtectableItemCollection,
+ ProtectableItemProperties,
+ ProtectableItemQueryParameter,
+ ProtectedItemsQueryParameter,
+ ProtectionContainer,
+ ProtectionContainerCollection,
+ ProtectionContainerFabricSpecificDetails,
+ ProtectionContainerMapping,
+ ProtectionContainerMappingCollection,
+ ProtectionContainerMappingProperties,
+ ProtectionContainerMappingProviderSpecificDetails,
+ ProtectionContainerProperties,
+ ProtectionProfileCustomDetails,
+ ProviderError,
+ ProviderSpecificRecoveryPointDetails,
+ PushInstallerDetails,
+ RcmProxyDetails,
+ RecoveryAvailabilitySetCustomDetails,
+ RecoveryPlan,
+ RecoveryPlanA2ADetails,
+ RecoveryPlanA2AFailoverInput,
+ RecoveryPlanA2AInput,
+ RecoveryPlanAction,
+ RecoveryPlanActionDetails,
+ RecoveryPlanAutomationRunbookActionDetails,
+ RecoveryPlanCollection,
+ RecoveryPlanGroup,
+ RecoveryPlanGroupTaskDetails,
+ RecoveryPlanHyperVReplicaAzureFailbackInput,
+ RecoveryPlanHyperVReplicaAzureFailoverInput,
+ RecoveryPlanInMageAzureV2FailoverInput,
+ RecoveryPlanInMageFailoverInput,
+ RecoveryPlanInMageRcmFailbackFailoverInput,
+ RecoveryPlanInMageRcmFailoverInput,
+ RecoveryPlanManualActionDetails,
+ RecoveryPlanPlannedFailoverInput,
+ RecoveryPlanPlannedFailoverInputProperties,
+ RecoveryPlanProperties,
+ RecoveryPlanProtectedItem,
+ RecoveryPlanProviderSpecificDetails,
+ RecoveryPlanProviderSpecificFailoverInput,
+ RecoveryPlanProviderSpecificInput,
+ RecoveryPlanScriptActionDetails,
+ RecoveryPlanShutdownGroupTaskDetails,
+ RecoveryPlanTestFailoverCleanupInput,
+ RecoveryPlanTestFailoverCleanupInputProperties,
+ RecoveryPlanTestFailoverInput,
+ RecoveryPlanTestFailoverInputProperties,
+ RecoveryPlanUnplannedFailoverInput,
+ RecoveryPlanUnplannedFailoverInputProperties,
+ RecoveryPoint,
+ RecoveryPointCollection,
+ RecoveryPointProperties,
+ RecoveryProximityPlacementGroupCustomDetails,
+ RecoveryResourceGroupCustomDetails,
+ RecoveryServicesProvider,
+ RecoveryServicesProviderCollection,
+ RecoveryServicesProviderProperties,
+ RecoveryVirtualNetworkCustomDetails,
+ RegisteredClusterNodes,
+ RemoveDisksInput,
+ RemoveDisksInputProperties,
+ RemoveDisksProviderSpecificInput,
+ RemoveProtectionContainerMappingInput,
+ RemoveProtectionContainerMappingInputProperties,
+ RenewCertificateInput,
+ RenewCertificateInputProperties,
+ ReplicationAgentDetails,
+ ReplicationAppliance,
+ ReplicationApplianceProperties,
+ ReplicationClusterProviderSpecificSettings,
+ ReplicationEligibilityResults,
+ ReplicationEligibilityResultsCollection,
+ ReplicationEligibilityResultsErrorInfo,
+ ReplicationEligibilityResultsProperties,
+ ReplicationGroupDetails,
+ ReplicationProtectedItem,
+ ReplicationProtectedItemCollection,
+ ReplicationProtectedItemProperties,
+ ReplicationProtectionCluster,
+ ReplicationProtectionClusterCollection,
+ ReplicationProtectionClusterProperties,
+ ReplicationProtectionIntent,
+ ReplicationProtectionIntentCollection,
+ ReplicationProtectionIntentProperties,
+ ReplicationProtectionIntentProviderSpecificSettings,
+ ReplicationProviderContainerUnmappingInput,
+ ReplicationProviderSpecificContainerCreationInput,
+ ReplicationProviderSpecificContainerMappingInput,
+ ReplicationProviderSpecificSettings,
+ ReplicationProviderSpecificUpdateContainerMappingInput,
+ ReprotectAgentDetails,
+ ResolveHealthError,
+ ResolveHealthInput,
+ ResolveHealthInputProperties,
+ Resource,
+ ResourceHealthSummary,
+ ResumeJobParams,
+ ResumeJobParamsProperties,
+ ResumeReplicationInput,
+ ResumeReplicationInputProperties,
+ ResumeReplicationProviderSpecificInput,
+ ResyncInput,
+ ResyncInputProperties,
+ ResyncProviderSpecificInput,
+ RetentionVolume,
+ ReverseReplicationInput,
+ ReverseReplicationInputProperties,
+ ReverseReplicationProviderSpecificInput,
+ RoleAssignment,
+ RunAsAccount,
+ ScriptActionTaskDetails,
+ SecurityProfileProperties,
+ ServiceError,
+ SharedDiskReplicationItemProperties,
+ SharedDiskReplicationProviderSpecificSettings,
+ StorageAccountCustomDetails,
+ StorageClassification,
+ StorageClassificationCollection,
+ StorageClassificationMapping,
+ StorageClassificationMappingCollection,
+ StorageClassificationMappingInput,
+ StorageClassificationMappingProperties,
+ StorageClassificationProperties,
+ StorageMappingInputProperties,
+ Subnet,
+ SupportedOSDetails,
+ SupportedOSProperties,
+ SupportedOSProperty,
+ SupportedOperatingSystems,
+ SwitchClusterProtectionInput,
+ SwitchClusterProtectionInputProperties,
+ SwitchClusterProtectionProviderSpecificInput,
+ SwitchProtectionInput,
+ SwitchProtectionInputProperties,
+ SwitchProtectionJobDetails,
+ SwitchProtectionProviderSpecificInput,
+ SwitchProviderInput,
+ SwitchProviderInputProperties,
+ SwitchProviderSpecificInput,
+ TargetComputeSize,
+ TargetComputeSizeCollection,
+ TargetComputeSizeProperties,
+ TaskTypeDetails,
+ TestFailoverCleanupInput,
+ TestFailoverCleanupInputProperties,
+ TestFailoverInput,
+ TestFailoverInputProperties,
+ TestFailoverJobDetails,
+ TestFailoverProviderSpecificInput,
+ TestMigrateCleanupInput,
+ TestMigrateCleanupInputProperties,
+ TestMigrateInput,
+ TestMigrateInputProperties,
+ TestMigrateProviderSpecificInput,
+ UnplannedFailoverInput,
+ UnplannedFailoverInputProperties,
+ UnplannedFailoverProviderSpecificInput,
+ UpdateApplianceForReplicationProtectedItemInput,
+ UpdateApplianceForReplicationProtectedItemInputProperties,
+ UpdateApplianceForReplicationProtectedItemProviderSpecificInput,
+ UpdateDiskInput,
+ UpdateMigrationItemInput,
+ UpdateMigrationItemInputProperties,
+ UpdateMigrationItemProviderSpecificInput,
+ UpdateMobilityServiceRequest,
+ UpdateMobilityServiceRequestProperties,
+ UpdateNetworkMappingInput,
+ UpdateNetworkMappingInputProperties,
+ UpdatePolicyInput,
+ UpdatePolicyInputProperties,
+ UpdateProtectionContainerMappingInput,
+ UpdateProtectionContainerMappingInputProperties,
+ UpdateRecoveryPlanInput,
+ UpdateRecoveryPlanInputProperties,
+ UpdateReplicationProtectedItemInput,
+ UpdateReplicationProtectedItemInputProperties,
+ UpdateReplicationProtectedItemProviderInput,
+ UpdateVCenterRequest,
+ UpdateVCenterRequestProperties,
+ UserCreatedResourceTag,
+ VCenter,
+ VCenterCollection,
+ VCenterProperties,
+ VMNicDetails,
+ VMNicInputDetails,
+ VMwareCbtContainerCreationInput,
+ VMwareCbtContainerMappingInput,
+ VMwareCbtDiskInput,
+ VMwareCbtEnableMigrationInput,
+ VMwareCbtEventDetails,
+ VMwareCbtMigrateInput,
+ VMwareCbtMigrationDetails,
+ VMwareCbtNicDetails,
+ VMwareCbtNicInput,
+ VMwareCbtPolicyCreationInput,
+ VMwareCbtProtectedDiskDetails,
+ VMwareCbtProtectionContainerMappingDetails,
+ VMwareCbtResumeReplicationInput,
+ VMwareCbtResyncInput,
+ VMwareCbtSecurityProfileProperties,
+ VMwareCbtTestMigrateInput,
+ VMwareCbtUpdateDiskInput,
+ VMwareCbtUpdateMigrationItemInput,
+ VMwareDetails,
+ VMwareV2FabricCreationInput,
+ VMwareV2FabricSpecificDetails,
+ VMwareVirtualMachineDetails,
+ VaultHealthDetails,
+ VaultHealthProperties,
+ VaultSetting,
+ VaultSettingCollection,
+ VaultSettingCreationInput,
+ VaultSettingCreationInputProperties,
+ VaultSettingProperties,
+ VersionDetails,
+ VirtualMachineTaskDetails,
+ VmNicUpdatesTaskDetails,
+ VmmDetails,
+ VmmToAzureCreateNetworkMappingInput,
+ VmmToAzureNetworkMappingSettings,
+ VmmToAzureUpdateNetworkMappingInput,
+ VmmToVmmCreateNetworkMappingInput,
+ VmmToVmmNetworkMappingSettings,
+ VmmToVmmUpdateNetworkMappingInput,
+ VmmVirtualMachineDetails,
+ VmwareCbtPolicyDetails,
+)
+
+from ._site_recovery_management_client_enums import ( # type: ignore
+ A2ARecoveryAvailabilityType,
+ A2ARpRecoveryPointType,
+ AgentAutoUpdateStatus,
+ AgentUpgradeBlockedReason,
+ AgentVersionStatus,
+ AlternateLocationRecoveryOption,
+ AutoProtectionOfDataDisk,
+ AutomationAccountAuthenticationType,
+ ChurnOptionSelected,
+ ClusterRecoveryPointType,
+ DataSyncStatus,
+ DisableProtectionReason,
+ DiskAccountType,
+ DiskReplicationProgressHealth,
+ DiskState,
+ EthernetAddressType,
+ ExportJobOutputSerializationType,
+ ExtendedLocationType,
+ FailoverDeploymentModel,
+ FailoverDirection,
+ HealthErrorCategory,
+ HealthErrorCustomerResolvability,
+ HyperVReplicaAzureRpRecoveryPointType,
+ InMageRcmFailbackRecoveryPointType,
+ InMageV2RpRecoveryPointType,
+ LicenseType,
+ LinuxLicenseType,
+ MigrationItemOperation,
+ MigrationRecoveryPointType,
+ MigrationState,
+ MobilityAgentUpgradeState,
+ MultiVmGroupCreateOption,
+ MultiVmSyncPointOption,
+ PlannedFailoverStatus,
+ PossibleOperationsDirections,
+ PresenceStatus,
+ ProtectionHealth,
+ RcmComponentStatus,
+ RecoveryPlanActionLocation,
+ RecoveryPlanGroupType,
+ RecoveryPlanPointType,
+ RecoveryPointSyncType,
+ RecoveryPointType,
+ ReplicationProtectedItemOperation,
+ ResyncState,
+ RpInMageRecoveryPointType,
+ SecurityConfiguration,
+ SecurityType,
+ SetMultiVmSyncStatus,
+ Severity,
+ SourceSiteOperations,
+ SqlServerLicenseType,
+ TestMigrationState,
+ VmEncryptionType,
+ VmReplicationProgressHealth,
+)
from ._patch import __all__ as _patch_all
-from ._patch import * # pylint: disable=unused-wildcard-import
+from ._patch import *
from ._patch import patch_sdk as _patch_sdk
__all__ = [
"A2AAddDisksInput",
+ "A2AApplyClusterRecoveryPointInput",
"A2AApplyRecoveryPointInput",
+ "A2AClusterRecoveryPointDetails",
+ "A2AClusterTestFailoverInput",
+ "A2AClusterUnplannedFailoverInput",
"A2AContainerCreationInput",
"A2AContainerMappingInput",
"A2ACreateProtectionIntentInput",
@@ -603,6 +666,7 @@
"A2APolicyCreationInput",
"A2APolicyDetails",
"A2AProtectedDiskDetails",
+ "A2AProtectedItemDetail",
"A2AProtectedManagedDiskDetails",
"A2AProtectionContainerMappingDetails",
"A2AProtectionIntentDiskInputDetails",
@@ -611,7 +675,11 @@
"A2ARemoveDisksInput",
"A2AReplicationDetails",
"A2AReplicationIntentDetails",
+ "A2AReplicationProtectionClusterDetails",
"A2AReprotectInput",
+ "A2ASharedDiskIRErrorDetails",
+ "A2ASharedDiskReplicationDetails",
+ "A2ASwitchClusterProtectionInput",
"A2ASwitchProtectionInput",
"A2ATestFailoverInput",
"A2AUnplannedFailoverInput",
@@ -640,6 +708,9 @@
"ApplianceQueryParameter",
"ApplianceResourceDetails",
"ApplianceSpecificDetails",
+ "ApplyClusterRecoveryPointInput",
+ "ApplyClusterRecoveryPointInputProperties",
+ "ApplyClusterRecoveryPointProviderSpecificInput",
"ApplyRecoveryPointInput",
"ApplyRecoveryPointInputProperties",
"ApplyRecoveryPointProviderSpecificInput",
@@ -652,6 +723,21 @@
"AzureToAzureUpdateNetworkMappingInput",
"AzureToAzureVmSyncedConfigDetails",
"AzureVmDiskDetails",
+ "ClusterFailoverJobDetails",
+ "ClusterProviderSpecificRecoveryPointDetails",
+ "ClusterRecoveryPoint",
+ "ClusterRecoveryPointCollection",
+ "ClusterRecoveryPointProperties",
+ "ClusterSwitchProtectionJobDetails",
+ "ClusterTestFailoverCleanupInput",
+ "ClusterTestFailoverCleanupInputProperties",
+ "ClusterTestFailoverInput",
+ "ClusterTestFailoverInputProperties",
+ "ClusterTestFailoverJobDetails",
+ "ClusterTestFailoverProviderSpecificInput",
+ "ClusterUnplannedFailoverInput",
+ "ClusterUnplannedFailoverInputProperties",
+ "ClusterUnplannedFailoverProviderSpecificInput",
"ComputeSizeErrorDetails",
"ConfigurationSettings",
"ConfigureAlertRequest",
@@ -789,6 +875,7 @@
"InMagePolicyDetails",
"InMagePolicyInput",
"InMageProtectedDiskDetails",
+ "InMageRcmAddDisksInput",
"InMageRcmAgentUpgradeBlockingErrorDetails",
"InMageRcmApplianceDetails",
"InMageRcmApplianceSpecificDetails",
@@ -825,6 +912,7 @@
"InMageRcmReprotectInput",
"InMageRcmSyncDetails",
"InMageRcmTestFailoverInput",
+ "InMageRcmUnProtectedDiskDetails",
"InMageRcmUnplannedFailoverInput",
"InMageRcmUpdateApplianceForReplicationProtectedItemInput",
"InMageRcmUpdateContainerMappingInput",
@@ -852,6 +940,7 @@
"LogicalNetwork",
"LogicalNetworkCollection",
"LogicalNetworkProperties",
+ "ManagedRunCommandScriptInput",
"ManualActionTaskDetails",
"MarsAgentDetails",
"MasterTargetServer",
@@ -954,6 +1043,7 @@
"RecoveryServicesProviderCollection",
"RecoveryServicesProviderProperties",
"RecoveryVirtualNetworkCustomDetails",
+ "RegisteredClusterNodes",
"RemoveDisksInput",
"RemoveDisksInputProperties",
"RemoveDisksProviderSpecificInput",
@@ -964,6 +1054,7 @@
"ReplicationAgentDetails",
"ReplicationAppliance",
"ReplicationApplianceProperties",
+ "ReplicationClusterProviderSpecificSettings",
"ReplicationEligibilityResults",
"ReplicationEligibilityResultsCollection",
"ReplicationEligibilityResultsErrorInfo",
@@ -972,6 +1063,9 @@
"ReplicationProtectedItem",
"ReplicationProtectedItemCollection",
"ReplicationProtectedItemProperties",
+ "ReplicationProtectionCluster",
+ "ReplicationProtectionClusterCollection",
+ "ReplicationProtectionClusterProperties",
"ReplicationProtectionIntent",
"ReplicationProtectionIntentCollection",
"ReplicationProtectionIntentProperties",
@@ -1002,7 +1096,10 @@
"RoleAssignment",
"RunAsAccount",
"ScriptActionTaskDetails",
+ "SecurityProfileProperties",
"ServiceError",
+ "SharedDiskReplicationItemProperties",
+ "SharedDiskReplicationProviderSpecificSettings",
"StorageAccountCustomDetails",
"StorageClassification",
"StorageClassificationCollection",
@@ -1017,6 +1114,9 @@
"SupportedOSProperties",
"SupportedOSProperty",
"SupportedOperatingSystems",
+ "SwitchClusterProtectionInput",
+ "SwitchClusterProtectionInputProperties",
+ "SwitchClusterProtectionProviderSpecificInput",
"SwitchProtectionInput",
"SwitchProtectionInputProperties",
"SwitchProtectionJobDetails",
@@ -1064,6 +1164,7 @@
"UpdateReplicationProtectedItemProviderInput",
"UpdateVCenterRequest",
"UpdateVCenterRequestProperties",
+ "UserCreatedResourceTag",
"VCenter",
"VCenterCollection",
"VCenterProperties",
@@ -1119,20 +1220,24 @@
"AutoProtectionOfDataDisk",
"AutomationAccountAuthenticationType",
"ChurnOptionSelected",
+ "ClusterRecoveryPointType",
"DataSyncStatus",
"DisableProtectionReason",
"DiskAccountType",
"DiskReplicationProgressHealth",
+ "DiskState",
"EthernetAddressType",
"ExportJobOutputSerializationType",
"ExtendedLocationType",
"FailoverDeploymentModel",
+ "FailoverDirection",
"HealthErrorCategory",
"HealthErrorCustomerResolvability",
"HyperVReplicaAzureRpRecoveryPointType",
"InMageRcmFailbackRecoveryPointType",
"InMageV2RpRecoveryPointType",
"LicenseType",
+ "LinuxLicenseType",
"MigrationItemOperation",
"MigrationRecoveryPointType",
"MigrationState",
@@ -1152,6 +1257,7 @@
"ReplicationProtectedItemOperation",
"ResyncState",
"RpInMageRecoveryPointType",
+ "SecurityConfiguration",
"SecurityType",
"SetMultiVmSyncStatus",
"Severity",
@@ -1161,5 +1267,5 @@
"VmEncryptionType",
"VmReplicationProgressHealth",
]
-__all__.extend([p for p in _patch_all if p not in __all__])
+__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py
index 2d2000563022..8bc0dbd5bc29 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py
@@ -1,5 +1,5 @@
-# coding=utf-8
# 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.
@@ -16,10 +16,9 @@
if sys.version_info >= (3, 9):
from collections.abc import MutableMapping
else:
- from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports
+ from typing import MutableMapping # type: ignore
if TYPE_CHECKING:
- # pylint: disable=unused-import,ungrouped-imports
from .. import models as _models
JSON = MutableMapping[str, Any] # pylint: disable=unsubscriptable-object
@@ -28,9 +27,9 @@ class AddDisksProviderSpecificInput(_serialization.Model):
"""Add Disks provider specific input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2AAddDisksInput
+ A2AAddDisksInput, InMageRcmAddDisksInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -44,7 +43,7 @@ class AddDisksProviderSpecificInput(_serialization.Model):
"instance_type": {"key": "instanceType", "type": "str"},
}
- _subtype_map = {"instance_type": {"A2A": "A2AAddDisksInput"}}
+ _subtype_map = {"instance_type": {"A2A": "A2AAddDisksInput", "InMageRcm": "InMageRcmAddDisksInput"}}
def __init__(self, **kwargs: Any) -> None:
""" """
@@ -55,7 +54,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2AAddDisksInput(AddDisksProviderSpecificInput):
"""A2A add disk(s) input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -97,6 +96,57 @@ def __init__(
self.vm_managed_disks = vm_managed_disks
+class ApplyClusterRecoveryPointProviderSpecificInput(_serialization.Model): # pylint: disable=name-too-long
+ """Provider specific input for apply cluster recovery point.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AApplyClusterRecoveryPointInput
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {"instance_type": {"A2A": "A2AApplyClusterRecoveryPointInput"}}
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class A2AApplyClusterRecoveryPointInput(ApplyClusterRecoveryPointProviderSpecificInput):
+ """A2A provider specific input for apply cluster recovery point.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+
+
class ApplyRecoveryPointProviderSpecificInput(_serialization.Model):
"""Provider specific input for apply recovery point.
@@ -105,7 +155,7 @@ class ApplyRecoveryPointProviderSpecificInput(_serialization.Model):
HyperVReplicaAzureApplyRecoveryPointInput, InMageAzureV2ApplyRecoveryPointInput,
InMageRcmApplyRecoveryPointInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -138,7 +188,111 @@ def __init__(self, **kwargs: Any) -> None:
class A2AApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
"""ApplyRecoveryPoint input specific to A2A provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+
+
+class ClusterProviderSpecificRecoveryPointDetails(_serialization.Model): # pylint: disable=name-too-long
+ """Replication provider specific cluster recovery point details.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AClusterRecoveryPointDetails
+
+ 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 instance_type: Gets the provider type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True, "readonly": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {"instance_type": {"A2A": "A2AClusterRecoveryPointDetails"}}
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class A2AClusterRecoveryPointDetails(ClusterProviderSpecificRecoveryPointDetails):
+ """A2A provider specific cluster recovery point details.
+
+ 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 instance_type: Gets the provider type. Required.
+ :vartype instance_type: str
+ :ivar recovery_point_sync_type: A value indicating whether the recovery point is multi VM
+ consistent. Known values are: "MultiVmSyncRecoveryPoint" and "PerVmRecoveryPoint".
+ :vartype recovery_point_sync_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPointSyncType
+ :ivar nodes: The list of nodes representing the cluster.
+ :vartype nodes: list[str]
+ """
+
+ _validation = {
+ "instance_type": {"required": True, "readonly": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "recovery_point_sync_type": {"key": "recoveryPointSyncType", "type": "str"},
+ "nodes": {"key": "nodes", "type": "[str]"},
+ }
+
+ def __init__(
+ self,
+ *,
+ recovery_point_sync_type: Optional[Union[str, "_models.RecoveryPointSyncType"]] = None,
+ nodes: Optional[List[str]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword recovery_point_sync_type: A value indicating whether the recovery point is multi VM
+ consistent. Known values are: "MultiVmSyncRecoveryPoint" and "PerVmRecoveryPoint".
+ :paramtype recovery_point_sync_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPointSyncType
+ :keyword nodes: The list of nodes representing the cluster.
+ :paramtype nodes: list[str]
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+ self.recovery_point_sync_type = recovery_point_sync_type
+ self.nodes = nodes
+
+
+class ClusterTestFailoverProviderSpecificInput(_serialization.Model):
+ """Provider specific test cluster failover input.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AClusterTestFailoverInput
+
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -152,20 +306,138 @@ class A2AApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
"instance_type": {"key": "instanceType", "type": "str"},
}
+ _subtype_map = {"instance_type": {"A2A": "A2AClusterTestFailoverInput"}}
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class A2AClusterTestFailoverInput(ClusterTestFailoverProviderSpecificInput):
+ """A2A provider specific input for test cluster failover.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :vartype cluster_recovery_point_id: str
+ :ivar individual_node_recovery_points: The list of individual node recovery points.
+ :vartype individual_node_recovery_points: list[str]
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "cluster_recovery_point_id": {"key": "clusterRecoveryPointId", "type": "str"},
+ "individual_node_recovery_points": {"key": "individualNodeRecoveryPoints", "type": "[str]"},
+ }
+
+ def __init__(
+ self,
+ *,
+ cluster_recovery_point_id: Optional[str] = None,
+ individual_node_recovery_points: Optional[List[str]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :paramtype cluster_recovery_point_id: str
+ :keyword individual_node_recovery_points: The list of individual node recovery points.
+ :paramtype individual_node_recovery_points: list[str]
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+ self.cluster_recovery_point_id = cluster_recovery_point_id
+ self.individual_node_recovery_points = individual_node_recovery_points
+
+
+class ClusterUnplannedFailoverProviderSpecificInput(_serialization.Model): # pylint: disable=name-too-long
+ """Provider specific unplanned cluster failover input.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AClusterUnplannedFailoverInput
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {"instance_type": {"A2A": "A2AClusterUnplannedFailoverInput"}}
+
def __init__(self, **kwargs: Any) -> None:
""" """
super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class A2AClusterUnplannedFailoverInput(ClusterUnplannedFailoverProviderSpecificInput):
+ """A2A provider specific input for unplanned cluster failover.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :vartype cluster_recovery_point_id: str
+ :ivar individual_node_recovery_points: The list of individual node recovery points.
+ :vartype individual_node_recovery_points: list[str]
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "cluster_recovery_point_id": {"key": "clusterRecoveryPointId", "type": "str"},
+ "individual_node_recovery_points": {"key": "individualNodeRecoveryPoints", "type": "[str]"},
+ }
+
+ def __init__(
+ self,
+ *,
+ cluster_recovery_point_id: Optional[str] = None,
+ individual_node_recovery_points: Optional[List[str]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :paramtype cluster_recovery_point_id: str
+ :keyword individual_node_recovery_points: The list of individual node recovery points.
+ :paramtype individual_node_recovery_points: list[str]
+ """
+ super().__init__(**kwargs)
self.instance_type: str = "A2A"
+ self.cluster_recovery_point_id = cluster_recovery_point_id
+ self.individual_node_recovery_points = individual_node_recovery_points
-class ReplicationProviderSpecificContainerCreationInput(_serialization.Model):
+class ReplicationProviderSpecificContainerCreationInput(_serialization.Model): # pylint: disable=name-too-long
"""Provider specific input for container creation operation.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2AContainerCreationInput, A2ACrossClusterMigrationContainerCreationInput,
VMwareCbtContainerCreationInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -196,7 +468,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2AContainerCreationInput(ReplicationProviderSpecificContainerCreationInput):
"""A2A cloud creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -216,13 +488,13 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: str = "A2A"
-class ReplicationProviderSpecificContainerMappingInput(_serialization.Model):
+class ReplicationProviderSpecificContainerMappingInput(_serialization.Model): # pylint: disable=name-too-long
"""Provider specific input for pairing operations.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2AContainerMappingInput, VMwareCbtContainerMappingInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -247,7 +519,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2AContainerMappingInput(ReplicationProviderSpecificContainerMappingInput):
"""A2A container mapping input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -303,13 +575,13 @@ def __init__(
self.automation_account_authentication_type = automation_account_authentication_type
-class CreateProtectionIntentProviderSpecificDetails(_serialization.Model):
+class CreateProtectionIntentProviderSpecificDetails(_serialization.Model): # pylint: disable=name-too-long
"""Create protection intent provider specific input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2ACreateProtectionIntentInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -331,12 +603,10 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2ACreateProtectionIntentInput(
- CreateProtectionIntentProviderSpecificDetails
-): # pylint: disable=too-many-instance-attributes
+class A2ACreateProtectionIntentInput(CreateProtectionIntentProviderSpecificDetails):
"""A2A create protection intent input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -585,10 +855,12 @@ def __init__(
self.automation_account_arm_id = automation_account_arm_id
-class A2ACrossClusterMigrationApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
+class A2ACrossClusterMigrationApplyRecoveryPointInput(
+ ApplyRecoveryPointProviderSpecificInput
+): # pylint: disable=name-too-long
"""ApplyRecoveryPoint input specific to A2ACrossClusterMigration provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -608,10 +880,12 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: str = "A2ACrossClusterMigration"
-class A2ACrossClusterMigrationContainerCreationInput(ReplicationProviderSpecificContainerCreationInput):
+class A2ACrossClusterMigrationContainerCreationInput(
+ ReplicationProviderSpecificContainerCreationInput
+): # pylint: disable=name-too-long
"""A2ACrossClusterMigration cloud creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -639,7 +913,7 @@ class EnableProtectionProviderSpecificInput(_serialization.Model):
HyperVReplicaAzureEnableProtectionInput, InMageEnableProtectionInput,
InMageAzureV2EnableProtectionInput, InMageRcmEnableProtectionInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -670,10 +944,12 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2ACrossClusterMigrationEnableProtectionInput(EnableProtectionProviderSpecificInput):
+class A2ACrossClusterMigrationEnableProtectionInput(
+ EnableProtectionProviderSpecificInput
+): # pylint: disable=name-too-long
"""A2A Cross-Cluster Migration enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -717,7 +993,7 @@ class PolicyProviderSpecificInput(_serialization.Model):
InMageRcmPolicyCreationInput, InMageRcmFailbackPolicyCreationInput,
VMwareCbtPolicyCreationInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -751,10 +1027,10 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2ACrossClusterMigrationPolicyCreationInput(PolicyProviderSpecificInput):
+class A2ACrossClusterMigrationPolicyCreationInput(PolicyProviderSpecificInput): # pylint: disable=name-too-long
"""A2A Cross-Cluster Migration Policy creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -784,7 +1060,7 @@ class ReplicationProviderSpecificSettings(_serialization.Model):
InMageReplicationDetails, InMageAzureV2ReplicationDetails, InMageRcmReplicationDetails,
InMageRcmFailbackReplicationDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -819,10 +1095,10 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2ACrossClusterMigrationReplicationDetails(ReplicationProviderSpecificSettings):
+class A2ACrossClusterMigrationReplicationDetails(ReplicationProviderSpecificSettings): # pylint: disable=name-too-long
"""A2A provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -895,10 +1171,10 @@ def __init__(
self.lifecycle_id = lifecycle_id
-class A2AEnableProtectionInput(EnableProtectionProviderSpecificInput): # pylint: disable=too-many-instance-attributes
+class A2AEnableProtectionInput(EnableProtectionProviderSpecificInput):
"""A2A enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -923,6 +1199,8 @@ class A2AEnableProtectionInput(EnableProtectionProviderSpecificInput): # pylint
:vartype multi_vm_group_name: str
:ivar multi_vm_group_id: The multi vm group id.
:vartype multi_vm_group_id: str
+ :ivar protection_cluster_id: The replication protection cluster Id.
+ :vartype protection_cluster_id: str
:ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
:vartype recovery_boot_diag_storage_account_id: str
:ivar disk_encryption_info: The recovery disk encryption information (for two pass flows).
@@ -964,6 +1242,7 @@ class A2AEnableProtectionInput(EnableProtectionProviderSpecificInput): # pylint
"vm_managed_disks": {"key": "vmManagedDisks", "type": "[A2AVmManagedDiskInputDetails]"},
"multi_vm_group_name": {"key": "multiVmGroupName", "type": "str"},
"multi_vm_group_id": {"key": "multiVmGroupId", "type": "str"},
+ "protection_cluster_id": {"key": "protectionClusterId", "type": "str"},
"recovery_boot_diag_storage_account_id": {"key": "recoveryBootDiagStorageAccountId", "type": "str"},
"disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
"recovery_availability_zone": {"key": "recoveryAvailabilityZone", "type": "str"},
@@ -988,6 +1267,7 @@ def __init__(
vm_managed_disks: Optional[List["_models.A2AVmManagedDiskInputDetails"]] = None,
multi_vm_group_name: Optional[str] = None,
multi_vm_group_id: Optional[str] = None,
+ protection_cluster_id: Optional[str] = None,
recovery_boot_diag_storage_account_id: Optional[str] = None,
disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
recovery_availability_zone: Optional[str] = None,
@@ -1022,6 +1302,8 @@ def __init__(
:paramtype multi_vm_group_name: str
:keyword multi_vm_group_id: The multi vm group id.
:paramtype multi_vm_group_id: str
+ :keyword protection_cluster_id: The replication protection cluster Id.
+ :paramtype protection_cluster_id: str
:keyword recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
:paramtype recovery_boot_diag_storage_account_id: str
:keyword disk_encryption_info: The recovery disk encryption information (for two pass flows).
@@ -1057,6 +1339,7 @@ def __init__(
self.vm_managed_disks = vm_managed_disks
self.multi_vm_group_name = multi_vm_group_name
self.multi_vm_group_id = multi_vm_group_id
+ self.protection_cluster_id = protection_cluster_id
self.recovery_boot_diag_storage_account_id = recovery_boot_diag_storage_account_id
self.disk_encryption_info = disk_encryption_info
self.recovery_availability_zone = recovery_availability_zone
@@ -1076,7 +1359,7 @@ class EventProviderSpecificDetails(_serialization.Model):
HyperVReplicaAzureEventDetails, HyperVReplicaBaseEventDetails, InMageAzureV2EventDetails,
InMageRcmEventDetails, InMageRcmFailbackEventDetails, VMwareCbtEventDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -1113,7 +1396,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2AEventDetails(EventProviderSpecificDetails):
"""Model class for event details of a A2A event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -1216,7 +1499,7 @@ def __init__(
self.recovery_extended_location = recovery_extended_location
-class A2AFabricSpecificLocationDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class A2AFabricSpecificLocationDetails(_serialization.Model):
"""ExtendedLocation details data.
:ivar initial_primary_zone: The initial source zone info.
@@ -1329,7 +1612,7 @@ def __init__(
class A2APolicyCreationInput(PolicyProviderSpecificInput):
"""A2A Policy creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -1401,7 +1684,7 @@ class PolicyProviderSpecificDetails(_serialization.Model):
InMageAzureV2PolicyDetails, InMageBasePolicyDetails, InMageRcmPolicyDetails,
InMageRcmFailbackPolicyDetails, VmwareCbtPolicyDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -1440,7 +1723,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2APolicyDetails(PolicyProviderSpecificDetails):
"""A2A specific policy details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -1504,7 +1787,7 @@ def __init__(
self.crash_consistent_frequency_in_minutes = crash_consistent_frequency_in_minutes
-class A2AProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class A2AProtectedDiskDetails(_serialization.Model):
"""A2A protected disk details.
:ivar disk_uri: The disk uri.
@@ -1692,59 +1975,151 @@ def __init__(
self.tfo_disk_name = tfo_disk_name
-class A2AProtectedManagedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
- """A2A protected managed disk details.
+class A2AProtectedItemDetail(_serialization.Model):
+ """A2A specific switch cluster protection input.
- :ivar disk_id: The managed disk Arm id.
- :vartype disk_id: str
- :ivar recovery_resource_group_id: The recovery disk resource group Arm Id.
+ :ivar vm_managed_disks: The list of vm managed disk details.
+ :vartype vm_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
+ :ivar recovery_resource_group_id: The recovery resource group Id.
:vartype recovery_resource_group_id: str
- :ivar recovery_target_disk_id: Recovery target disk Arm Id.
- :vartype recovery_target_disk_id: str
- :ivar recovery_replica_disk_id: Recovery replica disk Arm Id.
- :vartype recovery_replica_disk_id: str
- :ivar recovery_orignal_target_disk_id: Recovery original target disk Arm Id.
- :vartype recovery_orignal_target_disk_id: str
- :ivar recovery_replica_disk_account_type: The replica disk type. Its an optional value and will
- be same as source disk type if not user provided.
- :vartype recovery_replica_disk_account_type: str
- :ivar recovery_target_disk_account_type: The target disk type after failover. Its an optional
- value and will be same as source disk type if not user provided.
- :vartype recovery_target_disk_account_type: str
- :ivar recovery_disk_encryption_set_id: The recovery disk encryption set Id.
- :vartype recovery_disk_encryption_set_id: str
- :ivar primary_disk_encryption_set_id: The primary disk encryption set Id.
- :vartype primary_disk_encryption_set_id: str
- :ivar disk_name: The disk name.
- :vartype disk_name: str
- :ivar disk_capacity_in_bytes: The disk capacity in bytes.
- :vartype disk_capacity_in_bytes: int
- :ivar primary_staging_azure_storage_account_id: The primary staging storage account.
- :vartype primary_staging_azure_storage_account_id: str
- :ivar disk_type: The type of disk.
- :vartype disk_type: str
- :ivar resync_required: A value indicating whether resync is required for this disk.
- :vartype resync_required: bool
- :ivar monitoring_percentage_completion: The percentage of the monitoring job. The type of the
- monitoring job is defined by MonitoringJobType property.
- :vartype monitoring_percentage_completion: int
- :ivar monitoring_job_type: The type of the monitoring job. The progress is contained in
- MonitoringPercentageCompletion property.
- :vartype monitoring_job_type: str
- :ivar data_pending_in_staging_storage_account_in_mb: The data pending for replication in MB at
- staging account.
- :vartype data_pending_in_staging_storage_account_in_mb: float
- :ivar data_pending_at_source_agent_in_mb: The data pending at source virtual machine in MB.
- :vartype data_pending_at_source_agent_in_mb: float
- :ivar disk_state: The disk state.
- :vartype disk_state: str
- :ivar allowed_disk_level_operation: The disk level operations list.
- :vartype allowed_disk_level_operation: list[str]
- :ivar is_disk_encrypted: A value indicating whether vm has encrypted os disk or not.
- :vartype is_disk_encrypted: bool
- :ivar secret_identifier: The secret URL / identifier (BEK).
- :vartype secret_identifier: str
- :ivar dek_key_vault_arm_id: The KeyVault resource id for secret (BEK).
+ :ivar recovery_availability_set_id: The recovery availability set.
+ :vartype recovery_availability_set_id: str
+ :ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
+ :vartype recovery_boot_diag_storage_account_id: str
+ :ivar recovery_availability_zone: The recovery availability zone.
+ :vartype recovery_availability_zone: str
+ :ivar recovery_proximity_placement_group_id: The recovery proximity placement group Id.
+ :vartype recovery_proximity_placement_group_id: str
+ :ivar recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
+ :vartype recovery_virtual_machine_scale_set_id: str
+ :ivar recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
+ :vartype recovery_capacity_reservation_group_id: str
+ :ivar disk_encryption_info: The recovery disk encryption information.
+ :vartype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :ivar replication_protected_item_name: The Replication Protected item name.
+ :vartype replication_protected_item_name: str
+ """
+
+ _attribute_map = {
+ "vm_managed_disks": {"key": "vmManagedDisks", "type": "[A2AVmManagedDiskInputDetails]"},
+ "recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
+ "recovery_availability_set_id": {"key": "recoveryAvailabilitySetId", "type": "str"},
+ "recovery_boot_diag_storage_account_id": {"key": "recoveryBootDiagStorageAccountId", "type": "str"},
+ "recovery_availability_zone": {"key": "recoveryAvailabilityZone", "type": "str"},
+ "recovery_proximity_placement_group_id": {"key": "recoveryProximityPlacementGroupId", "type": "str"},
+ "recovery_virtual_machine_scale_set_id": {"key": "recoveryVirtualMachineScaleSetId", "type": "str"},
+ "recovery_capacity_reservation_group_id": {"key": "recoveryCapacityReservationGroupId", "type": "str"},
+ "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
+ "replication_protected_item_name": {"key": "replicationProtectedItemName", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ vm_managed_disks: Optional[List["_models.A2AVmManagedDiskInputDetails"]] = None,
+ recovery_resource_group_id: Optional[str] = None,
+ recovery_availability_set_id: Optional[str] = None,
+ recovery_boot_diag_storage_account_id: Optional[str] = None,
+ recovery_availability_zone: Optional[str] = None,
+ recovery_proximity_placement_group_id: Optional[str] = None,
+ recovery_virtual_machine_scale_set_id: Optional[str] = None,
+ recovery_capacity_reservation_group_id: Optional[str] = None,
+ disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
+ replication_protected_item_name: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword vm_managed_disks: The list of vm managed disk details.
+ :paramtype vm_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
+ :keyword recovery_resource_group_id: The recovery resource group Id.
+ :paramtype recovery_resource_group_id: str
+ :keyword recovery_availability_set_id: The recovery availability set.
+ :paramtype recovery_availability_set_id: str
+ :keyword recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
+ :paramtype recovery_boot_diag_storage_account_id: str
+ :keyword recovery_availability_zone: The recovery availability zone.
+ :paramtype recovery_availability_zone: str
+ :keyword recovery_proximity_placement_group_id: The recovery proximity placement group Id.
+ :paramtype recovery_proximity_placement_group_id: str
+ :keyword recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
+ :paramtype recovery_virtual_machine_scale_set_id: str
+ :keyword recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
+ :paramtype recovery_capacity_reservation_group_id: str
+ :keyword disk_encryption_info: The recovery disk encryption information.
+ :paramtype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :keyword replication_protected_item_name: The Replication Protected item name.
+ :paramtype replication_protected_item_name: str
+ """
+ super().__init__(**kwargs)
+ self.vm_managed_disks = vm_managed_disks
+ self.recovery_resource_group_id = recovery_resource_group_id
+ self.recovery_availability_set_id = recovery_availability_set_id
+ self.recovery_boot_diag_storage_account_id = recovery_boot_diag_storage_account_id
+ self.recovery_availability_zone = recovery_availability_zone
+ self.recovery_proximity_placement_group_id = recovery_proximity_placement_group_id
+ self.recovery_virtual_machine_scale_set_id = recovery_virtual_machine_scale_set_id
+ self.recovery_capacity_reservation_group_id = recovery_capacity_reservation_group_id
+ self.disk_encryption_info = disk_encryption_info
+ self.replication_protected_item_name = replication_protected_item_name
+
+
+class A2AProtectedManagedDiskDetails(_serialization.Model):
+ """A2A protected managed disk details.
+
+ :ivar disk_id: The managed disk Arm id.
+ :vartype disk_id: str
+ :ivar recovery_resource_group_id: The recovery disk resource group Arm Id.
+ :vartype recovery_resource_group_id: str
+ :ivar recovery_target_disk_id: Recovery target disk Arm Id.
+ :vartype recovery_target_disk_id: str
+ :ivar recovery_replica_disk_id: Recovery replica disk Arm Id.
+ :vartype recovery_replica_disk_id: str
+ :ivar recovery_orignal_target_disk_id: Recovery original target disk Arm Id.
+ :vartype recovery_orignal_target_disk_id: str
+ :ivar recovery_replica_disk_account_type: The replica disk type. Its an optional value and will
+ be same as source disk type if not user provided.
+ :vartype recovery_replica_disk_account_type: str
+ :ivar recovery_target_disk_account_type: The target disk type after failover. Its an optional
+ value and will be same as source disk type if not user provided.
+ :vartype recovery_target_disk_account_type: str
+ :ivar recovery_disk_encryption_set_id: The recovery disk encryption set Id.
+ :vartype recovery_disk_encryption_set_id: str
+ :ivar primary_disk_encryption_set_id: The primary disk encryption set Id.
+ :vartype primary_disk_encryption_set_id: str
+ :ivar disk_name: The disk name.
+ :vartype disk_name: str
+ :ivar disk_capacity_in_bytes: The disk capacity in bytes.
+ :vartype disk_capacity_in_bytes: int
+ :ivar primary_staging_azure_storage_account_id: The primary staging storage account.
+ :vartype primary_staging_azure_storage_account_id: str
+ :ivar disk_type: The type of disk.
+ :vartype disk_type: str
+ :ivar resync_required: A value indicating whether resync is required for this disk.
+ :vartype resync_required: bool
+ :ivar monitoring_percentage_completion: The percentage of the monitoring job. The type of the
+ monitoring job is defined by MonitoringJobType property.
+ :vartype monitoring_percentage_completion: int
+ :ivar monitoring_job_type: The type of the monitoring job. The progress is contained in
+ MonitoringPercentageCompletion property.
+ :vartype monitoring_job_type: str
+ :ivar data_pending_in_staging_storage_account_in_mb: The data pending for replication in MB at
+ staging account.
+ :vartype data_pending_in_staging_storage_account_in_mb: float
+ :ivar data_pending_at_source_agent_in_mb: The data pending at source virtual machine in MB.
+ :vartype data_pending_at_source_agent_in_mb: float
+ :ivar disk_state: The disk state.
+ :vartype disk_state: str
+ :ivar allowed_disk_level_operation: The disk level operations list.
+ :vartype allowed_disk_level_operation: list[str]
+ :ivar is_disk_encrypted: A value indicating whether vm has encrypted os disk or not.
+ :vartype is_disk_encrypted: bool
+ :ivar secret_identifier: The secret URL / identifier (BEK).
+ :vartype secret_identifier: str
+ :ivar dek_key_vault_arm_id: The KeyVault resource id for secret (BEK).
:vartype dek_key_vault_arm_id: str
:ivar is_disk_key_encrypted: A value indicating whether disk key got encrypted or not.
:vartype is_disk_key_encrypted: bool
@@ -1919,14 +2294,14 @@ def __init__( # pylint: disable=too-many-locals
self.tfo_disk_name = tfo_disk_name
-class ProtectionContainerMappingProviderSpecificDetails(_serialization.Model):
+class ProtectionContainerMappingProviderSpecificDetails(_serialization.Model): # pylint: disable=name-too-long
"""Container mapping provider specific details.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2AProtectionContainerMappingDetails, InMageRcmProtectionContainerMappingDetails,
VMwareCbtProtectionContainerMappingDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -1957,7 +2332,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2AProtectionContainerMappingDetails(ProtectionContainerMappingProviderSpecificDetails):
"""A2A provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -2030,7 +2405,7 @@ def __init__(
class A2AProtectionIntentDiskInputDetails(_serialization.Model):
"""Azure VM unmanaged disk input details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_uri: The disk Uri. Required.
:vartype disk_uri: str
@@ -2083,10 +2458,10 @@ def __init__(
self.primary_staging_storage_account_custom_input = primary_staging_storage_account_custom_input
-class A2AProtectionIntentManagedDiskInputDetails(_serialization.Model):
+class A2AProtectionIntentManagedDiskInputDetails(_serialization.Model): # pylint: disable=name-too-long
"""Azure VM managed disk input details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_id: The disk Id. Required.
:vartype disk_id: str
@@ -2181,7 +2556,7 @@ class ProviderSpecificRecoveryPointDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2ARecoveryPointDetails, InMageAzureV2RecoveryPointDetails, InMageRcmRecoveryPointDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the provider type. Required.
:vartype instance_type: str
@@ -2212,7 +2587,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2ARecoveryPointDetails(ProviderSpecificRecoveryPointDetails):
"""A2A provider specific recovery point details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the provider type. Required.
:vartype instance_type: str
@@ -2261,7 +2636,7 @@ class RemoveDisksProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2ARemoveDisksInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -2286,7 +2661,7 @@ def __init__(self, **kwargs: Any) -> None:
class A2ARemoveDisksInput(RemoveDisksProviderSpecificInput):
"""A2A remove disk(s) input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -2325,12 +2700,12 @@ def __init__(
self.vm_managed_disks_ids = vm_managed_disks_ids
-class A2AReplicationDetails(ReplicationProviderSpecificSettings): # pylint: disable=too-many-instance-attributes
+class A2AReplicationDetails(ReplicationProviderSpecificSettings):
"""A2A provider specific settings.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -2360,6 +2735,10 @@ class A2AReplicationDetails(ReplicationProviderSpecificSettings): # pylint: dis
~azure.mgmt.recoveryservicessiterecovery.models.MultiVmGroupCreateOption
:ivar management_id: The management Id.
:vartype management_id: str
+ :ivar protection_cluster_id: The replication protection cluster Id.
+ :vartype protection_cluster_id: str
+ :ivar is_cluster_infra_ready: A value indicating if the cluster infra is ready or not.
+ :vartype is_cluster_infra_ready: bool
:ivar protected_disks: The list of protected disks.
:vartype protected_disks:
list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedDiskDetails]
@@ -2494,6 +2873,8 @@ class A2AReplicationDetails(ReplicationProviderSpecificSettings): # pylint: dis
"multi_vm_group_name": {"key": "multiVmGroupName", "type": "str"},
"multi_vm_group_create_option": {"key": "multiVmGroupCreateOption", "type": "str"},
"management_id": {"key": "managementId", "type": "str"},
+ "protection_cluster_id": {"key": "protectionClusterId", "type": "str"},
+ "is_cluster_infra_ready": {"key": "isClusterInfraReady", "type": "bool"},
"protected_disks": {"key": "protectedDisks", "type": "[A2AProtectedDiskDetails]"},
"unprotected_disks": {"key": "unprotectedDisks", "type": "[A2AUnprotectedDiskDetails]"},
"protected_managed_disks": {"key": "protectedManagedDisks", "type": "[A2AProtectedManagedDiskDetails]"},
@@ -2552,6 +2933,8 @@ def __init__( # pylint: disable=too-many-locals
multi_vm_group_name: Optional[str] = None,
multi_vm_group_create_option: Optional[Union[str, "_models.MultiVmGroupCreateOption"]] = None,
management_id: Optional[str] = None,
+ protection_cluster_id: Optional[str] = None,
+ is_cluster_infra_ready: Optional[bool] = None,
protected_disks: Optional[List["_models.A2AProtectedDiskDetails"]] = None,
unprotected_disks: Optional[List["_models.A2AUnprotectedDiskDetails"]] = None,
protected_managed_disks: Optional[List["_models.A2AProtectedManagedDiskDetails"]] = None,
@@ -2612,6 +2995,10 @@ def __init__( # pylint: disable=too-many-locals
~azure.mgmt.recoveryservicessiterecovery.models.MultiVmGroupCreateOption
:keyword management_id: The management Id.
:paramtype management_id: str
+ :keyword protection_cluster_id: The replication protection cluster Id.
+ :paramtype protection_cluster_id: str
+ :keyword is_cluster_infra_ready: A value indicating if the cluster infra is ready or not.
+ :paramtype is_cluster_infra_ready: bool
:keyword protected_disks: The list of protected disks.
:paramtype protected_disks:
list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedDiskDetails]
@@ -2721,6 +3108,8 @@ def __init__( # pylint: disable=too-many-locals
self.multi_vm_group_name = multi_vm_group_name
self.multi_vm_group_create_option = multi_vm_group_create_option
self.management_id = management_id
+ self.protection_cluster_id = protection_cluster_id
+ self.is_cluster_infra_ready = is_cluster_infra_ready
self.protected_disks = protected_disks
self.unprotected_disks = unprotected_disks
self.protected_managed_disks = protected_managed_disks
@@ -2766,13 +3155,13 @@ def __init__( # pylint: disable=too-many-locals
self.churn_option_selected = None
-class ReplicationProtectionIntentProviderSpecificSettings(_serialization.Model):
+class ReplicationProtectionIntentProviderSpecificSettings(_serialization.Model): # pylint: disable=name-too-long
"""Replication provider specific settings.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
A2AReplicationIntentDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -2794,12 +3183,10 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2AReplicationIntentDetails(
- ReplicationProtectionIntentProviderSpecificSettings
-): # pylint: disable=too-many-instance-attributes
+class A2AReplicationIntentDetails(ReplicationProtectionIntentProviderSpecificSettings):
"""A2A provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -3024,16 +3411,15 @@ def __init__(
self.automation_account_authentication_type = automation_account_authentication_type
-class ReverseReplicationProviderSpecificInput(_serialization.Model):
- """Provider specific reverse replication input.
+class ReplicationClusterProviderSpecificSettings(_serialization.Model): # pylint: disable=name-too-long
+ """Replication cluster provider specific settings.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2AReprotectInput, HyperVReplicaAzureReprotectInput, InMageReprotectInput,
- InMageAzureV2ReprotectInput, InMageRcmReprotectInput, InMageRcmFailbackReprotectInput
+ A2AReplicationProtectionClusterDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
"""
@@ -3045,16 +3431,7 @@ class ReverseReplicationProviderSpecificInput(_serialization.Model):
"instance_type": {"key": "instanceType", "type": "str"},
}
- _subtype_map = {
- "instance_type": {
- "A2A": "A2AReprotectInput",
- "HyperVReplicaAzure": "HyperVReplicaAzureReprotectInput",
- "InMage": "InMageReprotectInput",
- "InMageAzureV2": "InMageAzureV2ReprotectInput",
- "InMageRcm": "InMageRcmReprotectInput",
- "InMageRcmFailback": "InMageRcmFailbackReprotectInput",
- }
- }
+ _subtype_map = {"instance_type": {"A2A": "A2AReplicationProtectionClusterDetails"}}
def __init__(self, **kwargs: Any) -> None:
""" """
@@ -3062,25 +3439,63 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2AReprotectInput(ReverseReplicationProviderSpecificInput):
- """Azure specific reprotect input.
+class A2AReplicationProtectionClusterDetails(ReplicationClusterProviderSpecificSettings):
+ """A2A provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
- :ivar recovery_container_id: The recovery container Id.
- :vartype recovery_container_id: str
- :ivar vm_disks: The list of vm disk details.
- :vartype vm_disks: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
- :ivar recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
- :vartype recovery_resource_group_id: str
- :ivar recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
- :vartype recovery_cloud_service_id: str
- :ivar recovery_availability_set_id: The recovery availability set.
- :vartype recovery_availability_set_id: str
- :ivar policy_id: The Policy Id.
- :vartype policy_id: str
+ :ivar multi_vm_group_id: The multi vm group Id.
+ :vartype multi_vm_group_id: str
+ :ivar multi_vm_group_name: The multi vm group name.
+ :vartype multi_vm_group_name: str
+ :ivar multi_vm_group_create_option: Whether Multi VM group is auto created or specified by
+ user. Known values are: "AutoCreated" and "UserSpecified".
+ :vartype multi_vm_group_create_option: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.MultiVmGroupCreateOption
+ :ivar primary_fabric_location: Primary fabric location.
+ :vartype primary_fabric_location: str
+ :ivar recovery_fabric_location: The recovery fabric location.
+ :vartype recovery_fabric_location: str
+ :ivar failover_recovery_point_id: The recovery point Id to which the cluster was failed over.
+ :vartype failover_recovery_point_id: str
+ :ivar cluster_management_id: The cluster management Id.
+ :vartype cluster_management_id: str
+ :ivar rpo_in_seconds: The last RPO value in seconds.
+ :vartype rpo_in_seconds: int
+ :ivar last_rpo_calculated_time: The time (in UTC) when the last RPO value was calculated by
+ Protection Service.
+ :vartype last_rpo_calculated_time: ~datetime.datetime
+ :ivar initial_primary_zone: The initial primary availability zone.
+ :vartype initial_primary_zone: str
+ :ivar initial_primary_fabric_location: The initial primary fabric location.
+ :vartype initial_primary_fabric_location: str
+ :ivar initial_recovery_zone: The initial recovery availability zone.
+ :vartype initial_recovery_zone: str
+ :ivar initial_recovery_fabric_location: The initial recovery fabric location.
+ :vartype initial_recovery_fabric_location: str
+ :ivar initial_primary_extended_location: The initial primary extended location.
+ :vartype initial_primary_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :ivar initial_recovery_extended_location: The initial recovery extended location.
+ :vartype initial_recovery_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :ivar primary_availability_zone: The primary availability zone.
+ :vartype primary_availability_zone: str
+ :ivar recovery_availability_zone: The recovery availability zone.
+ :vartype recovery_availability_zone: str
+ :ivar primary_extended_location: The primary Extended Location.
+ :vartype primary_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :ivar recovery_extended_location: The recovery Extended Location.
+ :vartype recovery_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :ivar lifecycle_id: An id that survives actions like switch protection which change the backing
+ PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in
+ being able to have an Id that denotes the "same" protected cluster even though other internal
+ Ids/ARM Id might be changing.
+ :vartype lifecycle_id: str
"""
_validation = {
@@ -3089,59 +3504,140 @@ class A2AReprotectInput(ReverseReplicationProviderSpecificInput):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
- "vm_disks": {"key": "vmDisks", "type": "[A2AVmDiskInputDetails]"},
- "recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
- "recovery_cloud_service_id": {"key": "recoveryCloudServiceId", "type": "str"},
- "recovery_availability_set_id": {"key": "recoveryAvailabilitySetId", "type": "str"},
- "policy_id": {"key": "policyId", "type": "str"},
+ "multi_vm_group_id": {"key": "multiVmGroupId", "type": "str"},
+ "multi_vm_group_name": {"key": "multiVmGroupName", "type": "str"},
+ "multi_vm_group_create_option": {"key": "multiVmGroupCreateOption", "type": "str"},
+ "primary_fabric_location": {"key": "primaryFabricLocation", "type": "str"},
+ "recovery_fabric_location": {"key": "recoveryFabricLocation", "type": "str"},
+ "failover_recovery_point_id": {"key": "failoverRecoveryPointId", "type": "str"},
+ "cluster_management_id": {"key": "clusterManagementId", "type": "str"},
+ "rpo_in_seconds": {"key": "rpoInSeconds", "type": "int"},
+ "last_rpo_calculated_time": {"key": "lastRpoCalculatedTime", "type": "iso-8601"},
+ "initial_primary_zone": {"key": "initialPrimaryZone", "type": "str"},
+ "initial_primary_fabric_location": {"key": "initialPrimaryFabricLocation", "type": "str"},
+ "initial_recovery_zone": {"key": "initialRecoveryZone", "type": "str"},
+ "initial_recovery_fabric_location": {"key": "initialRecoveryFabricLocation", "type": "str"},
+ "initial_primary_extended_location": {"key": "initialPrimaryExtendedLocation", "type": "ExtendedLocation"},
+ "initial_recovery_extended_location": {"key": "initialRecoveryExtendedLocation", "type": "ExtendedLocation"},
+ "primary_availability_zone": {"key": "primaryAvailabilityZone", "type": "str"},
+ "recovery_availability_zone": {"key": "recoveryAvailabilityZone", "type": "str"},
+ "primary_extended_location": {"key": "primaryExtendedLocation", "type": "ExtendedLocation"},
+ "recovery_extended_location": {"key": "recoveryExtendedLocation", "type": "ExtendedLocation"},
+ "lifecycle_id": {"key": "lifecycleId", "type": "str"},
}
def __init__(
self,
*,
- recovery_container_id: Optional[str] = None,
- vm_disks: Optional[List["_models.A2AVmDiskInputDetails"]] = None,
- recovery_resource_group_id: Optional[str] = None,
- recovery_cloud_service_id: Optional[str] = None,
- recovery_availability_set_id: Optional[str] = None,
- policy_id: Optional[str] = None,
- **kwargs: Any
- ) -> None:
- """
- :keyword recovery_container_id: The recovery container Id.
- :paramtype recovery_container_id: str
- :keyword vm_disks: The list of vm disk details.
- :paramtype vm_disks:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
- :keyword recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
- :paramtype recovery_resource_group_id: str
- :keyword recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
- :paramtype recovery_cloud_service_id: str
- :keyword recovery_availability_set_id: The recovery availability set.
- :paramtype recovery_availability_set_id: str
- :keyword policy_id: The Policy Id.
- :paramtype policy_id: str
+ multi_vm_group_id: Optional[str] = None,
+ multi_vm_group_name: Optional[str] = None,
+ multi_vm_group_create_option: Optional[Union[str, "_models.MultiVmGroupCreateOption"]] = None,
+ primary_fabric_location: Optional[str] = None,
+ recovery_fabric_location: Optional[str] = None,
+ failover_recovery_point_id: Optional[str] = None,
+ cluster_management_id: Optional[str] = None,
+ rpo_in_seconds: Optional[int] = None,
+ last_rpo_calculated_time: Optional[datetime.datetime] = None,
+ initial_primary_zone: Optional[str] = None,
+ initial_primary_fabric_location: Optional[str] = None,
+ initial_recovery_zone: Optional[str] = None,
+ initial_recovery_fabric_location: Optional[str] = None,
+ initial_primary_extended_location: Optional["_models.ExtendedLocation"] = None,
+ initial_recovery_extended_location: Optional["_models.ExtendedLocation"] = None,
+ primary_availability_zone: Optional[str] = None,
+ recovery_availability_zone: Optional[str] = None,
+ primary_extended_location: Optional["_models.ExtendedLocation"] = None,
+ recovery_extended_location: Optional["_models.ExtendedLocation"] = None,
+ lifecycle_id: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword multi_vm_group_id: The multi vm group Id.
+ :paramtype multi_vm_group_id: str
+ :keyword multi_vm_group_name: The multi vm group name.
+ :paramtype multi_vm_group_name: str
+ :keyword multi_vm_group_create_option: Whether Multi VM group is auto created or specified by
+ user. Known values are: "AutoCreated" and "UserSpecified".
+ :paramtype multi_vm_group_create_option: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.MultiVmGroupCreateOption
+ :keyword primary_fabric_location: Primary fabric location.
+ :paramtype primary_fabric_location: str
+ :keyword recovery_fabric_location: The recovery fabric location.
+ :paramtype recovery_fabric_location: str
+ :keyword failover_recovery_point_id: The recovery point Id to which the cluster was failed
+ over.
+ :paramtype failover_recovery_point_id: str
+ :keyword cluster_management_id: The cluster management Id.
+ :paramtype cluster_management_id: str
+ :keyword rpo_in_seconds: The last RPO value in seconds.
+ :paramtype rpo_in_seconds: int
+ :keyword last_rpo_calculated_time: The time (in UTC) when the last RPO value was calculated by
+ Protection Service.
+ :paramtype last_rpo_calculated_time: ~datetime.datetime
+ :keyword initial_primary_zone: The initial primary availability zone.
+ :paramtype initial_primary_zone: str
+ :keyword initial_primary_fabric_location: The initial primary fabric location.
+ :paramtype initial_primary_fabric_location: str
+ :keyword initial_recovery_zone: The initial recovery availability zone.
+ :paramtype initial_recovery_zone: str
+ :keyword initial_recovery_fabric_location: The initial recovery fabric location.
+ :paramtype initial_recovery_fabric_location: str
+ :keyword initial_primary_extended_location: The initial primary extended location.
+ :paramtype initial_primary_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :keyword initial_recovery_extended_location: The initial recovery extended location.
+ :paramtype initial_recovery_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :keyword primary_availability_zone: The primary availability zone.
+ :paramtype primary_availability_zone: str
+ :keyword recovery_availability_zone: The recovery availability zone.
+ :paramtype recovery_availability_zone: str
+ :keyword primary_extended_location: The primary Extended Location.
+ :paramtype primary_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :keyword recovery_extended_location: The recovery Extended Location.
+ :paramtype recovery_extended_location:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ExtendedLocation
+ :keyword lifecycle_id: An id that survives actions like switch protection which change the
+ backing PE/CPE objects internally.The lifecycle id gets carried forward to have a
+ link/continuity in being able to have an Id that denotes the "same" protected cluster even
+ though other internal Ids/ARM Id might be changing.
+ :paramtype lifecycle_id: str
"""
super().__init__(**kwargs)
self.instance_type: str = "A2A"
- self.recovery_container_id = recovery_container_id
- self.vm_disks = vm_disks
- self.recovery_resource_group_id = recovery_resource_group_id
- self.recovery_cloud_service_id = recovery_cloud_service_id
- self.recovery_availability_set_id = recovery_availability_set_id
- self.policy_id = policy_id
+ self.multi_vm_group_id = multi_vm_group_id
+ self.multi_vm_group_name = multi_vm_group_name
+ self.multi_vm_group_create_option = multi_vm_group_create_option
+ self.primary_fabric_location = primary_fabric_location
+ self.recovery_fabric_location = recovery_fabric_location
+ self.failover_recovery_point_id = failover_recovery_point_id
+ self.cluster_management_id = cluster_management_id
+ self.rpo_in_seconds = rpo_in_seconds
+ self.last_rpo_calculated_time = last_rpo_calculated_time
+ self.initial_primary_zone = initial_primary_zone
+ self.initial_primary_fabric_location = initial_primary_fabric_location
+ self.initial_recovery_zone = initial_recovery_zone
+ self.initial_recovery_fabric_location = initial_recovery_fabric_location
+ self.initial_primary_extended_location = initial_primary_extended_location
+ self.initial_recovery_extended_location = initial_recovery_extended_location
+ self.primary_availability_zone = primary_availability_zone
+ self.recovery_availability_zone = recovery_availability_zone
+ self.primary_extended_location = primary_extended_location
+ self.recovery_extended_location = recovery_extended_location
+ self.lifecycle_id = lifecycle_id
-class SwitchProtectionProviderSpecificInput(_serialization.Model):
- """Provider specific switch protection input.
+class ReverseReplicationProviderSpecificInput(_serialization.Model):
+ """Provider specific reverse replication input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2ASwitchProtectionInput
+ A2AReprotectInput, HyperVReplicaAzureReprotectInput, InMageReprotectInput,
+ InMageAzureV2ReprotectInput, InMageRcmReprotectInput, InMageRcmFailbackReprotectInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the Instance type. Required.
+ :ivar instance_type: The class type. Required.
:vartype instance_type: str
"""
@@ -3153,7 +3649,16 @@ class SwitchProtectionProviderSpecificInput(_serialization.Model):
"instance_type": {"key": "instanceType", "type": "str"},
}
- _subtype_map = {"instance_type": {"A2A": "A2ASwitchProtectionInput"}}
+ _subtype_map = {
+ "instance_type": {
+ "A2A": "A2AReprotectInput",
+ "HyperVReplicaAzure": "HyperVReplicaAzureReprotectInput",
+ "InMage": "InMageReprotectInput",
+ "InMageAzureV2": "InMageAzureV2ReprotectInput",
+ "InMageRcm": "InMageRcmReprotectInput",
+ "InMageRcmFailback": "InMageRcmFailbackReprotectInput",
+ }
+ }
def __init__(self, **kwargs: Any) -> None:
""" """
@@ -3161,20 +3666,17 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2ASwitchProtectionInput(SwitchProtectionProviderSpecificInput): # pylint: disable=too-many-instance-attributes
- """A2A specific switch protection input.
+class A2AReprotectInput(ReverseReplicationProviderSpecificInput):
+ """Azure specific reprotect input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the Instance type. Required.
+ :ivar instance_type: The class type. Required.
:vartype instance_type: str
:ivar recovery_container_id: The recovery container Id.
:vartype recovery_container_id: str
:ivar vm_disks: The list of vm disk details.
:vartype vm_disks: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
- :ivar vm_managed_disks: The list of vm managed disk details.
- :vartype vm_managed_disks:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
:ivar recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
:vartype recovery_resource_group_id: str
:ivar recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
@@ -3183,19 +3685,6 @@ class A2ASwitchProtectionInput(SwitchProtectionProviderSpecificInput): # pylint
:vartype recovery_availability_set_id: str
:ivar policy_id: The Policy Id.
:vartype policy_id: str
- :ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
- :vartype recovery_boot_diag_storage_account_id: str
- :ivar recovery_availability_zone: The recovery availability zone.
- :vartype recovery_availability_zone: str
- :ivar recovery_proximity_placement_group_id: The recovery proximity placement group Id.
- :vartype recovery_proximity_placement_group_id: str
- :ivar recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
- :vartype recovery_virtual_machine_scale_set_id: str
- :ivar recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
- :vartype recovery_capacity_reservation_group_id: str
- :ivar disk_encryption_info: The recovery disk encryption information.
- :vartype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
"""
_validation = {
@@ -3206,17 +3695,10 @@ class A2ASwitchProtectionInput(SwitchProtectionProviderSpecificInput): # pylint
"instance_type": {"key": "instanceType", "type": "str"},
"recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
"vm_disks": {"key": "vmDisks", "type": "[A2AVmDiskInputDetails]"},
- "vm_managed_disks": {"key": "vmManagedDisks", "type": "[A2AVmManagedDiskInputDetails]"},
"recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
"recovery_cloud_service_id": {"key": "recoveryCloudServiceId", "type": "str"},
"recovery_availability_set_id": {"key": "recoveryAvailabilitySetId", "type": "str"},
"policy_id": {"key": "policyId", "type": "str"},
- "recovery_boot_diag_storage_account_id": {"key": "recoveryBootDiagStorageAccountId", "type": "str"},
- "recovery_availability_zone": {"key": "recoveryAvailabilityZone", "type": "str"},
- "recovery_proximity_placement_group_id": {"key": "recoveryProximityPlacementGroupId", "type": "str"},
- "recovery_virtual_machine_scale_set_id": {"key": "recoveryVirtualMachineScaleSetId", "type": "str"},
- "recovery_capacity_reservation_group_id": {"key": "recoveryCapacityReservationGroupId", "type": "str"},
- "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
}
def __init__(
@@ -3224,17 +3706,10 @@ def __init__(
*,
recovery_container_id: Optional[str] = None,
vm_disks: Optional[List["_models.A2AVmDiskInputDetails"]] = None,
- vm_managed_disks: Optional[List["_models.A2AVmManagedDiskInputDetails"]] = None,
recovery_resource_group_id: Optional[str] = None,
recovery_cloud_service_id: Optional[str] = None,
recovery_availability_set_id: Optional[str] = None,
policy_id: Optional[str] = None,
- recovery_boot_diag_storage_account_id: Optional[str] = None,
- recovery_availability_zone: Optional[str] = None,
- recovery_proximity_placement_group_id: Optional[str] = None,
- recovery_virtual_machine_scale_set_id: Optional[str] = None,
- recovery_capacity_reservation_group_id: Optional[str] = None,
- disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
**kwargs: Any
) -> None:
"""
@@ -3243,9 +3718,6 @@ def __init__(
:keyword vm_disks: The list of vm disk details.
:paramtype vm_disks:
list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
- :keyword vm_managed_disks: The list of vm managed disk details.
- :paramtype vm_managed_disks:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
:keyword recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
:paramtype recovery_resource_group_id: str
:keyword recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
@@ -3254,87 +3726,70 @@ def __init__(
:paramtype recovery_availability_set_id: str
:keyword policy_id: The Policy Id.
:paramtype policy_id: str
- :keyword recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
- :paramtype recovery_boot_diag_storage_account_id: str
- :keyword recovery_availability_zone: The recovery availability zone.
- :paramtype recovery_availability_zone: str
- :keyword recovery_proximity_placement_group_id: The recovery proximity placement group Id.
- :paramtype recovery_proximity_placement_group_id: str
- :keyword recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
- :paramtype recovery_virtual_machine_scale_set_id: str
- :keyword recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
- :paramtype recovery_capacity_reservation_group_id: str
- :keyword disk_encryption_info: The recovery disk encryption information.
- :paramtype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
"""
super().__init__(**kwargs)
self.instance_type: str = "A2A"
self.recovery_container_id = recovery_container_id
self.vm_disks = vm_disks
- self.vm_managed_disks = vm_managed_disks
self.recovery_resource_group_id = recovery_resource_group_id
self.recovery_cloud_service_id = recovery_cloud_service_id
self.recovery_availability_set_id = recovery_availability_set_id
self.policy_id = policy_id
- self.recovery_boot_diag_storage_account_id = recovery_boot_diag_storage_account_id
- self.recovery_availability_zone = recovery_availability_zone
- self.recovery_proximity_placement_group_id = recovery_proximity_placement_group_id
- self.recovery_virtual_machine_scale_set_id = recovery_virtual_machine_scale_set_id
- self.recovery_capacity_reservation_group_id = recovery_capacity_reservation_group_id
- self.disk_encryption_info = disk_encryption_info
-class TestFailoverProviderSpecificInput(_serialization.Model):
- """Provider specific test failover input.
-
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2ATestFailoverInput, HyperVReplicaAzureTestFailoverInput, InMageTestFailoverInput,
- InMageAzureV2TestFailoverInput, InMageRcmTestFailoverInput
+class A2ASharedDiskIRErrorDetails(_serialization.Model):
+ """Extended location of the resource.
- All required parameters must be populated in order to send to Azure.
+ Variables are only populated by the server, and will be ignored when sending a request.
- :ivar instance_type: The class type. Required.
- :vartype instance_type: str
+ :ivar error_code: The error code.
+ :vartype error_code: str
+ :ivar error_code_enum: The error code enum.
+ :vartype error_code_enum: str
+ :ivar error_message: The error message.
+ :vartype error_message: str
+ :ivar possible_causes: The possible causes.
+ :vartype possible_causes: str
+ :ivar recommended_action: The recommended action.
+ :vartype recommended_action: str
"""
_validation = {
- "instance_type": {"required": True},
+ "error_code": {"readonly": True},
+ "error_code_enum": {"readonly": True},
+ "error_message": {"readonly": True},
+ "possible_causes": {"readonly": True},
+ "recommended_action": {"readonly": True},
}
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- }
-
- _subtype_map = {
- "instance_type": {
- "A2A": "A2ATestFailoverInput",
- "HyperVReplicaAzure": "HyperVReplicaAzureTestFailoverInput",
- "InMage": "InMageTestFailoverInput",
- "InMageAzureV2": "InMageAzureV2TestFailoverInput",
- "InMageRcm": "InMageRcmTestFailoverInput",
- }
+ "error_code": {"key": "errorCode", "type": "str"},
+ "error_code_enum": {"key": "errorCodeEnum", "type": "str"},
+ "error_message": {"key": "errorMessage", "type": "str"},
+ "possible_causes": {"key": "possibleCauses", "type": "str"},
+ "recommended_action": {"key": "recommendedAction", "type": "str"},
}
def __init__(self, **kwargs: Any) -> None:
""" """
super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
+ self.error_code = None
+ self.error_code_enum = None
+ self.error_message = None
+ self.possible_causes = None
+ self.recommended_action = None
-class A2ATestFailoverInput(TestFailoverProviderSpecificInput):
- """A2A provider specific input for test failover.
+class SharedDiskReplicationProviderSpecificSettings(_serialization.Model): # pylint: disable=name-too-long
+ """Replication provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2ASharedDiskReplicationDetails
- :ivar instance_type: The class type. Required.
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
- :ivar recovery_point_id: The recovery point id to be passed to test failover to a particular
- recovery point. In case of latest recovery point, null should be passed.
- :vartype recovery_point_id: str
- :ivar cloud_service_creation_option: A value indicating whether to use recovery cloud service
- for TFO or not.
- :vartype cloud_service_creation_option: str
"""
_validation = {
@@ -3343,43 +3798,52 @@ class A2ATestFailoverInput(TestFailoverProviderSpecificInput):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
- "cloud_service_creation_option": {"key": "cloudServiceCreationOption", "type": "str"},
}
- def __init__(
- self,
- *,
- recovery_point_id: Optional[str] = None,
- cloud_service_creation_option: Optional[str] = None,
- **kwargs: Any
- ) -> None:
- """
- :keyword recovery_point_id: The recovery point id to be passed to test failover to a particular
- recovery point. In case of latest recovery point, null should be passed.
- :paramtype recovery_point_id: str
- :keyword cloud_service_creation_option: A value indicating whether to use recovery cloud
- service for TFO or not.
- :paramtype cloud_service_creation_option: str
- """
- super().__init__(**kwargs)
- self.instance_type: str = "A2A"
- self.recovery_point_id = recovery_point_id
- self.cloud_service_creation_option = cloud_service_creation_option
+ _subtype_map = {"instance_type": {"A2A": "A2ASharedDiskReplicationDetails"}}
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
-class UnplannedFailoverProviderSpecificInput(_serialization.Model):
- """Provider specific unplanned failover input.
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2AUnplannedFailoverInput, HyperVReplicaAzureUnplannedFailoverInput,
- InMageUnplannedFailoverInput, InMageAzureV2UnplannedFailoverInput,
- InMageRcmUnplannedFailoverInput
+class A2ASharedDiskReplicationDetails(SharedDiskReplicationProviderSpecificSettings):
+ """A2A provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
+ :ivar management_id: The management Id.
+ :vartype management_id: str
+ :ivar unprotected_disks: The list of unprotected disks.
+ :vartype unprotected_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AUnprotectedDiskDetails]
+ :ivar protected_managed_disks: The list of protected managed disks.
+ :vartype protected_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedManagedDiskDetails]
+ :ivar primary_fabric_location: Primary fabric location.
+ :vartype primary_fabric_location: str
+ :ivar recovery_fabric_location: The recovery fabric location.
+ :vartype recovery_fabric_location: str
+ :ivar failover_recovery_point_id: The recovery point id to which the Virtual node was failed
+ over.
+ :vartype failover_recovery_point_id: str
+ :ivar monitoring_percentage_completion: The percentage of the monitoring job. The type of the
+ monitoring job is defined by MonitoringJobType property.
+ :vartype monitoring_percentage_completion: int
+ :ivar monitoring_job_type: The type of the monitoring job. The progress is contained in
+ MonitoringPercentageCompletion property.
+ :vartype monitoring_job_type: str
+ :ivar rpo_in_seconds: The last RPO value in seconds.
+ :vartype rpo_in_seconds: int
+ :ivar last_rpo_calculated_time: The time (in UTC) when the last RPO value was calculated by
+ Protection Service.
+ :vartype last_rpo_calculated_time: ~datetime.datetime
+ :ivar shared_disk_ir_errors: The IR Errors.
+ :vartype shared_disk_ir_errors:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2ASharedDiskIRErrorDetails]
"""
_validation = {
@@ -3388,115 +3852,90 @@ class UnplannedFailoverProviderSpecificInput(_serialization.Model):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- }
-
- _subtype_map = {
- "instance_type": {
- "A2A": "A2AUnplannedFailoverInput",
- "HyperVReplicaAzure": "HyperVReplicaAzureUnplannedFailoverInput",
- "InMage": "InMageUnplannedFailoverInput",
- "InMageAzureV2": "InMageAzureV2UnplannedFailoverInput",
- "InMageRcm": "InMageRcmUnplannedFailoverInput",
- }
- }
-
- def __init__(self, **kwargs: Any) -> None:
- """ """
- super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
-
-
-class A2AUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
- """A2A provider specific input for unplanned failover.
-
- All required parameters must be populated in order to send to Azure.
-
- :ivar instance_type: The class type. Required.
- :vartype instance_type: str
- :ivar recovery_point_id: The recovery point id to be passed to failover to a particular
- recovery point. In case of latest recovery point, null should be passed.
- :vartype recovery_point_id: str
- :ivar cloud_service_creation_option: A value indicating whether to use recovery cloud service
- for failover or not.
- :vartype cloud_service_creation_option: str
- """
-
- _validation = {
- "instance_type": {"required": True},
- }
-
- _attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
- "cloud_service_creation_option": {"key": "cloudServiceCreationOption", "type": "str"},
+ "management_id": {"key": "managementId", "type": "str"},
+ "unprotected_disks": {"key": "unprotectedDisks", "type": "[A2AUnprotectedDiskDetails]"},
+ "protected_managed_disks": {"key": "protectedManagedDisks", "type": "[A2AProtectedManagedDiskDetails]"},
+ "primary_fabric_location": {"key": "primaryFabricLocation", "type": "str"},
+ "recovery_fabric_location": {"key": "recoveryFabricLocation", "type": "str"},
+ "failover_recovery_point_id": {"key": "failoverRecoveryPointId", "type": "str"},
+ "monitoring_percentage_completion": {"key": "monitoringPercentageCompletion", "type": "int"},
+ "monitoring_job_type": {"key": "monitoringJobType", "type": "str"},
+ "rpo_in_seconds": {"key": "rpoInSeconds", "type": "int"},
+ "last_rpo_calculated_time": {"key": "lastRpoCalculatedTime", "type": "iso-8601"},
+ "shared_disk_ir_errors": {"key": "sharedDiskIRErrors", "type": "[A2ASharedDiskIRErrorDetails]"},
}
def __init__(
self,
*,
- recovery_point_id: Optional[str] = None,
- cloud_service_creation_option: Optional[str] = None,
+ management_id: Optional[str] = None,
+ unprotected_disks: Optional[List["_models.A2AUnprotectedDiskDetails"]] = None,
+ protected_managed_disks: Optional[List["_models.A2AProtectedManagedDiskDetails"]] = None,
+ primary_fabric_location: Optional[str] = None,
+ recovery_fabric_location: Optional[str] = None,
+ failover_recovery_point_id: Optional[str] = None,
+ monitoring_percentage_completion: Optional[int] = None,
+ monitoring_job_type: Optional[str] = None,
+ rpo_in_seconds: Optional[int] = None,
+ last_rpo_calculated_time: Optional[datetime.datetime] = None,
+ shared_disk_ir_errors: Optional[List["_models.A2ASharedDiskIRErrorDetails"]] = None,
**kwargs: Any
) -> None:
"""
- :keyword recovery_point_id: The recovery point id to be passed to failover to a particular
- recovery point. In case of latest recovery point, null should be passed.
- :paramtype recovery_point_id: str
- :keyword cloud_service_creation_option: A value indicating whether to use recovery cloud
- service for failover or not.
- :paramtype cloud_service_creation_option: str
+ :keyword management_id: The management Id.
+ :paramtype management_id: str
+ :keyword unprotected_disks: The list of unprotected disks.
+ :paramtype unprotected_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AUnprotectedDiskDetails]
+ :keyword protected_managed_disks: The list of protected managed disks.
+ :paramtype protected_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedManagedDiskDetails]
+ :keyword primary_fabric_location: Primary fabric location.
+ :paramtype primary_fabric_location: str
+ :keyword recovery_fabric_location: The recovery fabric location.
+ :paramtype recovery_fabric_location: str
+ :keyword failover_recovery_point_id: The recovery point id to which the Virtual node was failed
+ over.
+ :paramtype failover_recovery_point_id: str
+ :keyword monitoring_percentage_completion: The percentage of the monitoring job. The type of
+ the monitoring job is defined by MonitoringJobType property.
+ :paramtype monitoring_percentage_completion: int
+ :keyword monitoring_job_type: The type of the monitoring job. The progress is contained in
+ MonitoringPercentageCompletion property.
+ :paramtype monitoring_job_type: str
+ :keyword rpo_in_seconds: The last RPO value in seconds.
+ :paramtype rpo_in_seconds: int
+ :keyword last_rpo_calculated_time: The time (in UTC) when the last RPO value was calculated by
+ Protection Service.
+ :paramtype last_rpo_calculated_time: ~datetime.datetime
+ :keyword shared_disk_ir_errors: The IR Errors.
+ :paramtype shared_disk_ir_errors:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2ASharedDiskIRErrorDetails]
"""
super().__init__(**kwargs)
self.instance_type: str = "A2A"
- self.recovery_point_id = recovery_point_id
- self.cloud_service_creation_option = cloud_service_creation_option
-
-
-class A2AUnprotectedDiskDetails(_serialization.Model):
- """A2A unprotected disk details.
-
- :ivar disk_lun_id: The source lun Id for the data disk.
- :vartype disk_lun_id: int
- :ivar disk_auto_protection_status: A value indicating whether the disk auto protection is
- enabled. Known values are: "Disabled" and "Enabled".
- :vartype disk_auto_protection_status: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AutoProtectionOfDataDisk
- """
-
- _attribute_map = {
- "disk_lun_id": {"key": "diskLunId", "type": "int"},
- "disk_auto_protection_status": {"key": "diskAutoProtectionStatus", "type": "str"},
- }
-
- def __init__(
- self,
- *,
- disk_lun_id: Optional[int] = None,
- disk_auto_protection_status: Optional[Union[str, "_models.AutoProtectionOfDataDisk"]] = None,
- **kwargs: Any
- ) -> None:
- """
- :keyword disk_lun_id: The source lun Id for the data disk.
- :paramtype disk_lun_id: int
- :keyword disk_auto_protection_status: A value indicating whether the disk auto protection is
- enabled. Known values are: "Disabled" and "Enabled".
- :paramtype disk_auto_protection_status: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AutoProtectionOfDataDisk
- """
- super().__init__(**kwargs)
- self.disk_lun_id = disk_lun_id
- self.disk_auto_protection_status = disk_auto_protection_status
+ self.management_id = management_id
+ self.unprotected_disks = unprotected_disks
+ self.protected_managed_disks = protected_managed_disks
+ self.primary_fabric_location = primary_fabric_location
+ self.recovery_fabric_location = recovery_fabric_location
+ self.failover_recovery_point_id = failover_recovery_point_id
+ self.monitoring_percentage_completion = monitoring_percentage_completion
+ self.monitoring_job_type = monitoring_job_type
+ self.rpo_in_seconds = rpo_in_seconds
+ self.last_rpo_calculated_time = last_rpo_calculated_time
+ self.shared_disk_ir_errors = shared_disk_ir_errors
-class ReplicationProviderSpecificUpdateContainerMappingInput(_serialization.Model):
- """Provider specific input for update pairing operations.
+class SwitchClusterProtectionProviderSpecificInput(_serialization.Model): # pylint: disable=name-too-long
+ """Provider specific switch cluster protection input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2AUpdateContainerMappingInput, InMageRcmUpdateContainerMappingInput
+ A2ASwitchClusterProtectionInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
"""
@@ -3508,9 +3947,7 @@ class ReplicationProviderSpecificUpdateContainerMappingInput(_serialization.Mode
"instance_type": {"key": "instanceType", "type": "str"},
}
- _subtype_map = {
- "instance_type": {"A2A": "A2AUpdateContainerMappingInput", "InMageRcm": "InMageRcmUpdateContainerMappingInput"}
- }
+ _subtype_map = {"instance_type": {"A2A": "A2ASwitchClusterProtectionInput"}}
def __init__(self, **kwargs: Any) -> None:
""" """
@@ -3518,23 +3955,20 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2AUpdateContainerMappingInput(ReplicationProviderSpecificUpdateContainerMappingInput):
- """A2A update protection container mapping.
+class A2ASwitchClusterProtectionInput(SwitchClusterProtectionProviderSpecificInput):
+ """A2A specific switch cluster protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
- :ivar agent_auto_update_status: A value indicating whether the auto update is enabled. Known
- values are: "Disabled" and "Enabled".
- :vartype agent_auto_update_status: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AgentAutoUpdateStatus
- :ivar automation_account_arm_id: The automation account arm id.
- :vartype automation_account_arm_id: str
- :ivar automation_account_authentication_type: A value indicating the type authentication to use
- for automation Account. Known values are: "RunAsAccount" and "SystemAssignedIdentity".
- :vartype automation_account_authentication_type: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AutomationAccountAuthenticationType
+ :ivar recovery_container_id: The recovery container Id.
+ :vartype recovery_container_id: str
+ :ivar policy_id: The Policy Id.
+ :vartype policy_id: str
+ :ivar protected_items_detail:
+ :vartype protected_items_detail:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedItemDetail]
"""
_validation = {
@@ -3543,50 +3977,44 @@ class A2AUpdateContainerMappingInput(ReplicationProviderSpecificUpdateContainerM
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "agent_auto_update_status": {"key": "agentAutoUpdateStatus", "type": "str"},
- "automation_account_arm_id": {"key": "automationAccountArmId", "type": "str"},
- "automation_account_authentication_type": {"key": "automationAccountAuthenticationType", "type": "str"},
+ "recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
+ "policy_id": {"key": "policyId", "type": "str"},
+ "protected_items_detail": {"key": "protectedItemsDetail", "type": "[A2AProtectedItemDetail]"},
}
def __init__(
self,
*,
- agent_auto_update_status: Optional[Union[str, "_models.AgentAutoUpdateStatus"]] = None,
- automation_account_arm_id: Optional[str] = None,
- automation_account_authentication_type: Optional[
- Union[str, "_models.AutomationAccountAuthenticationType"]
- ] = None,
+ recovery_container_id: Optional[str] = None,
+ policy_id: Optional[str] = None,
+ protected_items_detail: Optional[List["_models.A2AProtectedItemDetail"]] = None,
**kwargs: Any
) -> None:
"""
- :keyword agent_auto_update_status: A value indicating whether the auto update is enabled. Known
- values are: "Disabled" and "Enabled".
- :paramtype agent_auto_update_status: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AgentAutoUpdateStatus
- :keyword automation_account_arm_id: The automation account arm id.
- :paramtype automation_account_arm_id: str
- :keyword automation_account_authentication_type: A value indicating the type authentication to
- use for automation Account. Known values are: "RunAsAccount" and "SystemAssignedIdentity".
- :paramtype automation_account_authentication_type: str or
- ~azure.mgmt.recoveryservicessiterecovery.models.AutomationAccountAuthenticationType
+ :keyword recovery_container_id: The recovery container Id.
+ :paramtype recovery_container_id: str
+ :keyword policy_id: The Policy Id.
+ :paramtype policy_id: str
+ :keyword protected_items_detail:
+ :paramtype protected_items_detail:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AProtectedItemDetail]
"""
super().__init__(**kwargs)
self.instance_type: str = "A2A"
- self.agent_auto_update_status = agent_auto_update_status
- self.automation_account_arm_id = automation_account_arm_id
- self.automation_account_authentication_type = automation_account_authentication_type
+ self.recovery_container_id = recovery_container_id
+ self.policy_id = policy_id
+ self.protected_items_detail = protected_items_detail
-class UpdateReplicationProtectedItemProviderInput(_serialization.Model):
- """Update replication protected item provider specific input.
+class SwitchProtectionProviderSpecificInput(_serialization.Model):
+ """Provider specific switch protection input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- A2AUpdateReplicationProtectedItemInput, HyperVReplicaAzureUpdateReplicationProtectedItemInput,
- InMageAzureV2UpdateReplicationProtectedItemInput, InMageRcmUpdateReplicationProtectedItemInput
+ A2ASwitchProtectionInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
"""
@@ -3598,14 +4026,7 @@ class UpdateReplicationProtectedItemProviderInput(_serialization.Model):
"instance_type": {"key": "instanceType", "type": "str"},
}
- _subtype_map = {
- "instance_type": {
- "A2A": "A2AUpdateReplicationProtectedItemInput",
- "HyperVReplicaAzure": "HyperVReplicaAzureUpdateReplicationProtectedItemInput",
- "InMageAzureV2": "InMageAzureV2UpdateReplicationProtectedItemInput",
- "InMageRcm": "InMageRcmUpdateReplicationProtectedItemInput",
- }
- }
+ _subtype_map = {"instance_type": {"A2A": "A2ASwitchProtectionInput"}}
def __init__(self, **kwargs: Any) -> None:
""" """
@@ -3613,33 +4034,41 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class A2AUpdateReplicationProtectedItemInput(UpdateReplicationProtectedItemProviderInput):
- """InMage Azure V2 input to update replication protected item.
+class A2ASwitchProtectionInput(SwitchProtectionProviderSpecificInput):
+ """A2A specific switch protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The class type. Required.
+ :ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
- :ivar recovery_cloud_service_id: The target cloud service ARM Id (for V1).
- :vartype recovery_cloud_service_id: str
- :ivar recovery_resource_group_id: The target resource group ARM Id (for V2).
+ :ivar recovery_container_id: The recovery container Id.
+ :vartype recovery_container_id: str
+ :ivar vm_disks: The list of vm disk details.
+ :vartype vm_disks: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
+ :ivar vm_managed_disks: The list of vm managed disk details.
+ :vartype vm_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
+ :ivar recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
:vartype recovery_resource_group_id: str
- :ivar managed_disk_update_details: Managed disk update details.
- :vartype managed_disk_update_details:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskUpdateDetails]
- :ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
- :vartype recovery_boot_diag_storage_account_id: str
- :ivar disk_encryption_info: The recovery os disk encryption information.
- :vartype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
- :ivar tfo_azure_vm_name: The user given name for Test Failover VM.
- :vartype tfo_azure_vm_name: str
+ :ivar recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
+ :vartype recovery_cloud_service_id: str
+ :ivar recovery_availability_set_id: The recovery availability set.
+ :vartype recovery_availability_set_id: str
+ :ivar policy_id: The Policy Id.
+ :vartype policy_id: str
+ :ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
+ :vartype recovery_boot_diag_storage_account_id: str
+ :ivar recovery_availability_zone: The recovery availability zone.
+ :vartype recovery_availability_zone: str
:ivar recovery_proximity_placement_group_id: The recovery proximity placement group Id.
:vartype recovery_proximity_placement_group_id: str
- :ivar recovery_virtual_machine_scale_set_id: The recovery virtual machine scale set Id.
+ :ivar recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
:vartype recovery_virtual_machine_scale_set_id: str
:ivar recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
:vartype recovery_capacity_reservation_group_id: str
+ :ivar disk_encryption_info: The recovery disk encryption information.
+ :vartype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
"""
_validation = {
@@ -3648,918 +4077,1899 @@ class A2AUpdateReplicationProtectedItemInput(UpdateReplicationProtectedItemProvi
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "recovery_cloud_service_id": {"key": "recoveryCloudServiceId", "type": "str"},
+ "recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
+ "vm_disks": {"key": "vmDisks", "type": "[A2AVmDiskInputDetails]"},
+ "vm_managed_disks": {"key": "vmManagedDisks", "type": "[A2AVmManagedDiskInputDetails]"},
"recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
- "managed_disk_update_details": {"key": "managedDiskUpdateDetails", "type": "[A2AVmManagedDiskUpdateDetails]"},
+ "recovery_cloud_service_id": {"key": "recoveryCloudServiceId", "type": "str"},
+ "recovery_availability_set_id": {"key": "recoveryAvailabilitySetId", "type": "str"},
+ "policy_id": {"key": "policyId", "type": "str"},
"recovery_boot_diag_storage_account_id": {"key": "recoveryBootDiagStorageAccountId", "type": "str"},
- "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
- "tfo_azure_vm_name": {"key": "tfoAzureVMName", "type": "str"},
+ "recovery_availability_zone": {"key": "recoveryAvailabilityZone", "type": "str"},
"recovery_proximity_placement_group_id": {"key": "recoveryProximityPlacementGroupId", "type": "str"},
"recovery_virtual_machine_scale_set_id": {"key": "recoveryVirtualMachineScaleSetId", "type": "str"},
"recovery_capacity_reservation_group_id": {"key": "recoveryCapacityReservationGroupId", "type": "str"},
+ "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
}
def __init__(
self,
*,
- recovery_cloud_service_id: Optional[str] = None,
+ recovery_container_id: Optional[str] = None,
+ vm_disks: Optional[List["_models.A2AVmDiskInputDetails"]] = None,
+ vm_managed_disks: Optional[List["_models.A2AVmManagedDiskInputDetails"]] = None,
recovery_resource_group_id: Optional[str] = None,
- managed_disk_update_details: Optional[List["_models.A2AVmManagedDiskUpdateDetails"]] = None,
+ recovery_cloud_service_id: Optional[str] = None,
+ recovery_availability_set_id: Optional[str] = None,
+ policy_id: Optional[str] = None,
recovery_boot_diag_storage_account_id: Optional[str] = None,
- disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
- tfo_azure_vm_name: Optional[str] = None,
+ recovery_availability_zone: Optional[str] = None,
recovery_proximity_placement_group_id: Optional[str] = None,
recovery_virtual_machine_scale_set_id: Optional[str] = None,
recovery_capacity_reservation_group_id: Optional[str] = None,
+ disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
**kwargs: Any
) -> None:
"""
- :keyword recovery_cloud_service_id: The target cloud service ARM Id (for V1).
- :paramtype recovery_cloud_service_id: str
- :keyword recovery_resource_group_id: The target resource group ARM Id (for V2).
+ :keyword recovery_container_id: The recovery container Id.
+ :paramtype recovery_container_id: str
+ :keyword vm_disks: The list of vm disk details.
+ :paramtype vm_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmDiskInputDetails]
+ :keyword vm_managed_disks: The list of vm managed disk details.
+ :paramtype vm_managed_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskInputDetails]
+ :keyword recovery_resource_group_id: The recovery resource group Id. Valid for V2 scenarios.
:paramtype recovery_resource_group_id: str
- :keyword managed_disk_update_details: Managed disk update details.
- :paramtype managed_disk_update_details:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskUpdateDetails]
+ :keyword recovery_cloud_service_id: The recovery cloud service Id. Valid for V1 scenarios.
+ :paramtype recovery_cloud_service_id: str
+ :keyword recovery_availability_set_id: The recovery availability set.
+ :paramtype recovery_availability_set_id: str
+ :keyword policy_id: The Policy Id.
+ :paramtype policy_id: str
:keyword recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
:paramtype recovery_boot_diag_storage_account_id: str
- :keyword disk_encryption_info: The recovery os disk encryption information.
- :paramtype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
- :keyword tfo_azure_vm_name: The user given name for Test Failover VM.
- :paramtype tfo_azure_vm_name: str
+ :keyword recovery_availability_zone: The recovery availability zone.
+ :paramtype recovery_availability_zone: str
:keyword recovery_proximity_placement_group_id: The recovery proximity placement group Id.
:paramtype recovery_proximity_placement_group_id: str
- :keyword recovery_virtual_machine_scale_set_id: The recovery virtual machine scale set Id.
+ :keyword recovery_virtual_machine_scale_set_id: The virtual machine scale set id.
:paramtype recovery_virtual_machine_scale_set_id: str
:keyword recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
:paramtype recovery_capacity_reservation_group_id: str
+ :keyword disk_encryption_info: The recovery disk encryption information.
+ :paramtype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
"""
super().__init__(**kwargs)
self.instance_type: str = "A2A"
- self.recovery_cloud_service_id = recovery_cloud_service_id
+ self.recovery_container_id = recovery_container_id
+ self.vm_disks = vm_disks
+ self.vm_managed_disks = vm_managed_disks
self.recovery_resource_group_id = recovery_resource_group_id
- self.managed_disk_update_details = managed_disk_update_details
+ self.recovery_cloud_service_id = recovery_cloud_service_id
+ self.recovery_availability_set_id = recovery_availability_set_id
+ self.policy_id = policy_id
self.recovery_boot_diag_storage_account_id = recovery_boot_diag_storage_account_id
- self.disk_encryption_info = disk_encryption_info
- self.tfo_azure_vm_name = tfo_azure_vm_name
+ self.recovery_availability_zone = recovery_availability_zone
self.recovery_proximity_placement_group_id = recovery_proximity_placement_group_id
self.recovery_virtual_machine_scale_set_id = recovery_virtual_machine_scale_set_id
self.recovery_capacity_reservation_group_id = recovery_capacity_reservation_group_id
+ self.disk_encryption_info = disk_encryption_info
-class A2AVmDiskInputDetails(_serialization.Model):
- """A2A disk input details.
+class TestFailoverProviderSpecificInput(_serialization.Model):
+ """Provider specific test failover input.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2ATestFailoverInput, HyperVReplicaAzureTestFailoverInput, InMageTestFailoverInput,
+ InMageAzureV2TestFailoverInput, InMageRcmTestFailoverInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar disk_uri: The disk Uri. Required.
- :vartype disk_uri: str
- :ivar recovery_azure_storage_account_id: The recovery VHD storage account Id. Required.
- :vartype recovery_azure_storage_account_id: str
- :ivar primary_staging_azure_storage_account_id: The primary staging storage account Id.
- Required.
- :vartype primary_staging_azure_storage_account_id: str
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
"""
_validation = {
- "disk_uri": {"required": True},
- "recovery_azure_storage_account_id": {"required": True},
- "primary_staging_azure_storage_account_id": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "disk_uri": {"key": "diskUri", "type": "str"},
- "recovery_azure_storage_account_id": {"key": "recoveryAzureStorageAccountId", "type": "str"},
- "primary_staging_azure_storage_account_id": {"key": "primaryStagingAzureStorageAccountId", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
}
- def __init__(
- self,
- *,
- disk_uri: str,
- recovery_azure_storage_account_id: str,
- primary_staging_azure_storage_account_id: str,
- **kwargs: Any
- ) -> None:
- """
- :keyword disk_uri: The disk Uri. Required.
- :paramtype disk_uri: str
- :keyword recovery_azure_storage_account_id: The recovery VHD storage account Id. Required.
- :paramtype recovery_azure_storage_account_id: str
- :keyword primary_staging_azure_storage_account_id: The primary staging storage account Id.
- Required.
- :paramtype primary_staging_azure_storage_account_id: str
- """
+ _subtype_map = {
+ "instance_type": {
+ "A2A": "A2ATestFailoverInput",
+ "HyperVReplicaAzure": "HyperVReplicaAzureTestFailoverInput",
+ "InMage": "InMageTestFailoverInput",
+ "InMageAzureV2": "InMageAzureV2TestFailoverInput",
+ "InMageRcm": "InMageRcmTestFailoverInput",
+ }
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
- self.disk_uri = disk_uri
- self.recovery_azure_storage_account_id = recovery_azure_storage_account_id
- self.primary_staging_azure_storage_account_id = primary_staging_azure_storage_account_id
+ self.instance_type: Optional[str] = None
-class A2AVmManagedDiskInputDetails(_serialization.Model):
- """A2A managed disk input details.
+class A2ATestFailoverInput(TestFailoverProviderSpecificInput):
+ """A2A provider specific input for test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar disk_id: The disk Id. Required.
- :vartype disk_id: str
- :ivar primary_staging_azure_storage_account_id: The primary staging storage account Arm Id.
- Required.
- :vartype primary_staging_azure_storage_account_id: str
- :ivar recovery_resource_group_id: The target resource group Arm Id. Required.
- :vartype recovery_resource_group_id: str
- :ivar recovery_replica_disk_account_type: The replica disk type. Its an optional value and will
- be same as source disk type if not user provided.
- :vartype recovery_replica_disk_account_type: str
- :ivar recovery_target_disk_account_type: The target disk type after failover. Its an optional
- value and will be same as source disk type if not user provided.
- :vartype recovery_target_disk_account_type: str
- :ivar recovery_disk_encryption_set_id: The recovery disk encryption set Id.
- :vartype recovery_disk_encryption_set_id: str
- :ivar disk_encryption_info: The recovery disk encryption information (for one / single pass
- flows).
- :vartype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar recovery_point_id: The recovery point id to be passed to test failover to a particular
+ recovery point. In case of latest recovery point, null should be passed.
+ :vartype recovery_point_id: str
+ :ivar cloud_service_creation_option: A value indicating whether to use recovery cloud service
+ for TFO or not.
+ :vartype cloud_service_creation_option: str
"""
_validation = {
- "disk_id": {"required": True},
- "primary_staging_azure_storage_account_id": {"required": True},
- "recovery_resource_group_id": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "disk_id": {"key": "diskId", "type": "str"},
- "primary_staging_azure_storage_account_id": {"key": "primaryStagingAzureStorageAccountId", "type": "str"},
- "recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
- "recovery_replica_disk_account_type": {"key": "recoveryReplicaDiskAccountType", "type": "str"},
- "recovery_target_disk_account_type": {"key": "recoveryTargetDiskAccountType", "type": "str"},
- "recovery_disk_encryption_set_id": {"key": "recoveryDiskEncryptionSetId", "type": "str"},
- "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
+ "cloud_service_creation_option": {"key": "cloudServiceCreationOption", "type": "str"},
}
def __init__(
self,
*,
- disk_id: str,
- primary_staging_azure_storage_account_id: str,
- recovery_resource_group_id: str,
- recovery_replica_disk_account_type: Optional[str] = None,
- recovery_target_disk_account_type: Optional[str] = None,
- recovery_disk_encryption_set_id: Optional[str] = None,
- disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
+ recovery_point_id: Optional[str] = None,
+ cloud_service_creation_option: Optional[str] = None,
**kwargs: Any
) -> None:
"""
- :keyword disk_id: The disk Id. Required.
- :paramtype disk_id: str
- :keyword primary_staging_azure_storage_account_id: The primary staging storage account Arm Id.
- Required.
- :paramtype primary_staging_azure_storage_account_id: str
- :keyword recovery_resource_group_id: The target resource group Arm Id. Required.
- :paramtype recovery_resource_group_id: str
- :keyword recovery_replica_disk_account_type: The replica disk type. Its an optional value and
- will be same as source disk type if not user provided.
- :paramtype recovery_replica_disk_account_type: str
- :keyword recovery_target_disk_account_type: The target disk type after failover. Its an
- optional value and will be same as source disk type if not user provided.
- :paramtype recovery_target_disk_account_type: str
- :keyword recovery_disk_encryption_set_id: The recovery disk encryption set Id.
- :paramtype recovery_disk_encryption_set_id: str
- :keyword disk_encryption_info: The recovery disk encryption information (for one / single pass
- flows).
- :paramtype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :keyword recovery_point_id: The recovery point id to be passed to test failover to a particular
+ recovery point. In case of latest recovery point, null should be passed.
+ :paramtype recovery_point_id: str
+ :keyword cloud_service_creation_option: A value indicating whether to use recovery cloud
+ service for TFO or not.
+ :paramtype cloud_service_creation_option: str
"""
super().__init__(**kwargs)
- self.disk_id = disk_id
- self.primary_staging_azure_storage_account_id = primary_staging_azure_storage_account_id
- self.recovery_resource_group_id = recovery_resource_group_id
- self.recovery_replica_disk_account_type = recovery_replica_disk_account_type
- self.recovery_target_disk_account_type = recovery_target_disk_account_type
- self.recovery_disk_encryption_set_id = recovery_disk_encryption_set_id
- self.disk_encryption_info = disk_encryption_info
-
+ self.instance_type: str = "A2A"
+ self.recovery_point_id = recovery_point_id
+ self.cloud_service_creation_option = cloud_service_creation_option
-class A2AVmManagedDiskUpdateDetails(_serialization.Model):
- """A2A Vm managed disk update details.
- :ivar disk_id: The disk Id.
- :vartype disk_id: str
- :ivar recovery_target_disk_account_type: The target disk type before failover.
- :vartype recovery_target_disk_account_type: str
- :ivar recovery_replica_disk_account_type: The replica disk type before failover.
- :vartype recovery_replica_disk_account_type: str
- :ivar disk_encryption_info: The recovery os disk encryption information.
- :vartype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
- :ivar failover_disk_name: The target disk name for unplanned failover operation.
- :vartype failover_disk_name: str
- :ivar tfo_disk_name: The target disk name for test failover operation.
- :vartype tfo_disk_name: str
- """
-
- _attribute_map = {
- "disk_id": {"key": "diskId", "type": "str"},
- "recovery_target_disk_account_type": {"key": "recoveryTargetDiskAccountType", "type": "str"},
- "recovery_replica_disk_account_type": {"key": "recoveryReplicaDiskAccountType", "type": "str"},
- "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
- "failover_disk_name": {"key": "failoverDiskName", "type": "str"},
- "tfo_disk_name": {"key": "tfoDiskName", "type": "str"},
- }
-
- def __init__(
- self,
- *,
- disk_id: Optional[str] = None,
- recovery_target_disk_account_type: Optional[str] = None,
- recovery_replica_disk_account_type: Optional[str] = None,
- disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
- failover_disk_name: Optional[str] = None,
- tfo_disk_name: Optional[str] = None,
- **kwargs: Any
- ) -> None:
- """
- :keyword disk_id: The disk Id.
- :paramtype disk_id: str
- :keyword recovery_target_disk_account_type: The target disk type before failover.
- :paramtype recovery_target_disk_account_type: str
- :keyword recovery_replica_disk_account_type: The replica disk type before failover.
- :paramtype recovery_replica_disk_account_type: str
- :keyword disk_encryption_info: The recovery os disk encryption information.
- :paramtype disk_encryption_info:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
- :keyword failover_disk_name: The target disk name for unplanned failover operation.
- :paramtype failover_disk_name: str
- :keyword tfo_disk_name: The target disk name for test failover operation.
- :paramtype tfo_disk_name: str
- """
- super().__init__(**kwargs)
- self.disk_id = disk_id
- self.recovery_target_disk_account_type = recovery_target_disk_account_type
- self.recovery_replica_disk_account_type = recovery_replica_disk_account_type
- self.disk_encryption_info = disk_encryption_info
- self.failover_disk_name = failover_disk_name
- self.tfo_disk_name = tfo_disk_name
+class UnplannedFailoverProviderSpecificInput(_serialization.Model):
+ """Provider specific unplanned failover input.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AUnplannedFailoverInput, HyperVReplicaAzureUnplannedFailoverInput,
+ InMageUnplannedFailoverInput, InMageAzureV2UnplannedFailoverInput,
+ InMageRcmUnplannedFailoverInput
-class A2AZoneDetails(_serialization.Model):
- """Zone details data.
+ All required parameters must be populated in order to send to server.
- :ivar source: Source zone info.
- :vartype source: str
- :ivar target: The target zone info.
- :vartype target: str
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "source": {"key": "source", "type": "str"},
- "target": {"key": "target", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
}
- def __init__(self, *, source: Optional[str] = None, target: Optional[str] = None, **kwargs: Any) -> None:
- """
- :keyword source: Source zone info.
- :paramtype source: str
- :keyword target: The target zone info.
- :paramtype target: str
- """
+ _subtype_map = {
+ "instance_type": {
+ "A2A": "A2AUnplannedFailoverInput",
+ "HyperVReplicaAzure": "HyperVReplicaAzureUnplannedFailoverInput",
+ "InMage": "InMageUnplannedFailoverInput",
+ "InMageAzureV2": "InMageAzureV2UnplannedFailoverInput",
+ "InMageRcm": "InMageRcmUnplannedFailoverInput",
+ }
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
- self.source = source
- self.target = target
+ self.instance_type: Optional[str] = None
-class AddDisksInput(_serialization.Model):
- """Input for add disk(s) operation.
+class A2AUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
+ """A2A provider specific input for unplanned failover.
- :ivar properties: Add disks input properties.
- :vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInputProperties
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar recovery_point_id: The recovery point id to be passed to failover to a particular
+ recovery point. In case of latest recovery point, null should be passed.
+ :vartype recovery_point_id: str
+ :ivar cloud_service_creation_option: A value indicating whether to use recovery cloud service
+ for failover or not.
+ :vartype cloud_service_creation_option: str
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "properties": {"key": "properties", "type": "AddDisksInputProperties"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
+ "cloud_service_creation_option": {"key": "cloudServiceCreationOption", "type": "str"},
}
- def __init__(self, *, properties: Optional["_models.AddDisksInputProperties"] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ recovery_point_id: Optional[str] = None,
+ cloud_service_creation_option: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
"""
- :keyword properties: Add disks input properties.
- :paramtype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInputProperties
+ :keyword recovery_point_id: The recovery point id to be passed to failover to a particular
+ recovery point. In case of latest recovery point, null should be passed.
+ :paramtype recovery_point_id: str
+ :keyword cloud_service_creation_option: A value indicating whether to use recovery cloud
+ service for failover or not.
+ :paramtype cloud_service_creation_option: str
"""
super().__init__(**kwargs)
- self.properties = properties
-
+ self.instance_type: str = "A2A"
+ self.recovery_point_id = recovery_point_id
+ self.cloud_service_creation_option = cloud_service_creation_option
-class AddDisksInputProperties(_serialization.Model):
- """Add Disks input properties.
- All required parameters must be populated in order to send to Azure.
+class A2AUnprotectedDiskDetails(_serialization.Model):
+ """A2A unprotected disk details.
- :ivar provider_specific_details: The ReplicationProviderInput. For HyperVReplicaAzure provider,
- it will be AzureEnableProtectionInput object. For San provider, it will be
- SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null. Required.
- :vartype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksProviderSpecificInput
+ :ivar disk_lun_id: The source lun Id for the data disk.
+ :vartype disk_lun_id: int
+ :ivar disk_auto_protection_status: A value indicating whether the disk auto protection is
+ enabled. Known values are: "Disabled" and "Enabled".
+ :vartype disk_auto_protection_status: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AutoProtectionOfDataDisk
"""
- _validation = {
- "provider_specific_details": {"required": True},
- }
-
_attribute_map = {
- "provider_specific_details": {"key": "providerSpecificDetails", "type": "AddDisksProviderSpecificInput"},
+ "disk_lun_id": {"key": "diskLunId", "type": "int"},
+ "disk_auto_protection_status": {"key": "diskAutoProtectionStatus", "type": "str"},
}
- def __init__(self, *, provider_specific_details: "_models.AddDisksProviderSpecificInput", **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ disk_lun_id: Optional[int] = None,
+ disk_auto_protection_status: Optional[Union[str, "_models.AutoProtectionOfDataDisk"]] = None,
+ **kwargs: Any
+ ) -> None:
"""
- :keyword provider_specific_details: The ReplicationProviderInput. For HyperVReplicaAzure
- provider, it will be AzureEnableProtectionInput object. For San provider, it will be
- SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null. Required.
- :paramtype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksProviderSpecificInput
+ :keyword disk_lun_id: The source lun Id for the data disk.
+ :paramtype disk_lun_id: int
+ :keyword disk_auto_protection_status: A value indicating whether the disk auto protection is
+ enabled. Known values are: "Disabled" and "Enabled".
+ :paramtype disk_auto_protection_status: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AutoProtectionOfDataDisk
"""
super().__init__(**kwargs)
- self.provider_specific_details = provider_specific_details
+ self.disk_lun_id = disk_lun_id
+ self.disk_auto_protection_status = disk_auto_protection_status
-class AddRecoveryServicesProviderInput(_serialization.Model):
- """Input required to add a provider.
+class ReplicationProviderSpecificUpdateContainerMappingInput(_serialization.Model): # pylint: disable=name-too-long
+ """Provider specific input for update pairing operations.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AUpdateContainerMappingInput, InMageRcmUpdateContainerMappingInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar properties: The properties of an add provider request. Required.
- :vartype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInputProperties
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
"""
_validation = {
- "properties": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "properties": {"key": "properties", "type": "AddRecoveryServicesProviderInputProperties"},
+ "instance_type": {"key": "instanceType", "type": "str"},
}
- def __init__(self, *, properties: "_models.AddRecoveryServicesProviderInputProperties", **kwargs: Any) -> None:
- """
- :keyword properties: The properties of an add provider request. Required.
- :paramtype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInputProperties
- """
+ _subtype_map = {
+ "instance_type": {"A2A": "A2AUpdateContainerMappingInput", "InMageRcm": "InMageRcmUpdateContainerMappingInput"}
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
- self.properties = properties
+ self.instance_type: Optional[str] = None
-class AddRecoveryServicesProviderInputProperties(_serialization.Model):
- """The properties of an add provider request.
+class A2AUpdateContainerMappingInput(ReplicationProviderSpecificUpdateContainerMappingInput):
+ """A2A update protection container mapping.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar machine_name: The name of the machine where the provider is getting added. Required.
- :vartype machine_name: str
- :ivar machine_id: The Id of the machine where the provider is getting added.
- :vartype machine_id: str
- :ivar bios_id: The Bios Id of the machine.
- :vartype bios_id: str
- :ivar authentication_identity_input: The identity provider input for DRA authentication.
- Required.
- :vartype authentication_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
- :ivar resource_access_identity_input: The identity provider input for resource access.
- Required.
- :vartype resource_access_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
- :ivar data_plane_authentication_identity_input: The identity provider input for data plane
- authentication.
- :vartype data_plane_authentication_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar agent_auto_update_status: A value indicating whether the auto update is enabled. Known
+ values are: "Disabled" and "Enabled".
+ :vartype agent_auto_update_status: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AgentAutoUpdateStatus
+ :ivar automation_account_arm_id: The automation account arm id.
+ :vartype automation_account_arm_id: str
+ :ivar automation_account_authentication_type: A value indicating the type authentication to use
+ for automation Account. Known values are: "RunAsAccount" and "SystemAssignedIdentity".
+ :vartype automation_account_authentication_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AutomationAccountAuthenticationType
"""
_validation = {
- "machine_name": {"required": True},
- "authentication_identity_input": {"required": True},
- "resource_access_identity_input": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "machine_name": {"key": "machineName", "type": "str"},
- "machine_id": {"key": "machineId", "type": "str"},
- "bios_id": {"key": "biosId", "type": "str"},
- "authentication_identity_input": {"key": "authenticationIdentityInput", "type": "IdentityProviderInput"},
- "resource_access_identity_input": {"key": "resourceAccessIdentityInput", "type": "IdentityProviderInput"},
- "data_plane_authentication_identity_input": {
- "key": "dataPlaneAuthenticationIdentityInput",
- "type": "IdentityProviderInput",
- },
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "agent_auto_update_status": {"key": "agentAutoUpdateStatus", "type": "str"},
+ "automation_account_arm_id": {"key": "automationAccountArmId", "type": "str"},
+ "automation_account_authentication_type": {"key": "automationAccountAuthenticationType", "type": "str"},
}
def __init__(
self,
*,
- machine_name: str,
- authentication_identity_input: "_models.IdentityProviderInput",
- resource_access_identity_input: "_models.IdentityProviderInput",
- machine_id: Optional[str] = None,
- bios_id: Optional[str] = None,
- data_plane_authentication_identity_input: Optional["_models.IdentityProviderInput"] = None,
+ agent_auto_update_status: Optional[Union[str, "_models.AgentAutoUpdateStatus"]] = None,
+ automation_account_arm_id: Optional[str] = None,
+ automation_account_authentication_type: Optional[
+ Union[str, "_models.AutomationAccountAuthenticationType"]
+ ] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword agent_auto_update_status: A value indicating whether the auto update is enabled. Known
+ values are: "Disabled" and "Enabled".
+ :paramtype agent_auto_update_status: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AgentAutoUpdateStatus
+ :keyword automation_account_arm_id: The automation account arm id.
+ :paramtype automation_account_arm_id: str
+ :keyword automation_account_authentication_type: A value indicating the type authentication to
+ use for automation Account. Known values are: "RunAsAccount" and "SystemAssignedIdentity".
+ :paramtype automation_account_authentication_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.AutomationAccountAuthenticationType
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+ self.agent_auto_update_status = agent_auto_update_status
+ self.automation_account_arm_id = automation_account_arm_id
+ self.automation_account_authentication_type = automation_account_authentication_type
+
+
+class UpdateReplicationProtectedItemProviderInput(_serialization.Model): # pylint: disable=name-too-long
+ """Update replication protected item provider specific input.
+
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ A2AUpdateReplicationProtectedItemInput, HyperVReplicaAzureUpdateReplicationProtectedItemInput,
+ InMageAzureV2UpdateReplicationProtectedItemInput, InMageRcmUpdateReplicationProtectedItemInput
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {
+ "instance_type": {
+ "A2A": "A2AUpdateReplicationProtectedItemInput",
+ "HyperVReplicaAzure": "HyperVReplicaAzureUpdateReplicationProtectedItemInput",
+ "InMageAzureV2": "InMageAzureV2UpdateReplicationProtectedItemInput",
+ "InMageRcm": "InMageRcmUpdateReplicationProtectedItemInput",
+ }
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class A2AUpdateReplicationProtectedItemInput(UpdateReplicationProtectedItemProviderInput):
+ """InMage Azure V2 input to update replication protected item.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar recovery_cloud_service_id: The target cloud service ARM Id (for V1).
+ :vartype recovery_cloud_service_id: str
+ :ivar recovery_resource_group_id: The target resource group ARM Id (for V2).
+ :vartype recovery_resource_group_id: str
+ :ivar managed_disk_update_details: Managed disk update details.
+ :vartype managed_disk_update_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskUpdateDetails]
+ :ivar recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
+ :vartype recovery_boot_diag_storage_account_id: str
+ :ivar disk_encryption_info: The recovery os disk encryption information.
+ :vartype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :ivar tfo_azure_vm_name: The user given name for Test Failover VM.
+ :vartype tfo_azure_vm_name: str
+ :ivar recovery_proximity_placement_group_id: The recovery proximity placement group Id.
+ :vartype recovery_proximity_placement_group_id: str
+ :ivar recovery_virtual_machine_scale_set_id: The recovery virtual machine scale set Id.
+ :vartype recovery_virtual_machine_scale_set_id: str
+ :ivar recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
+ :vartype recovery_capacity_reservation_group_id: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "recovery_cloud_service_id": {"key": "recoveryCloudServiceId", "type": "str"},
+ "recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
+ "managed_disk_update_details": {"key": "managedDiskUpdateDetails", "type": "[A2AVmManagedDiskUpdateDetails]"},
+ "recovery_boot_diag_storage_account_id": {"key": "recoveryBootDiagStorageAccountId", "type": "str"},
+ "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
+ "tfo_azure_vm_name": {"key": "tfoAzureVMName", "type": "str"},
+ "recovery_proximity_placement_group_id": {"key": "recoveryProximityPlacementGroupId", "type": "str"},
+ "recovery_virtual_machine_scale_set_id": {"key": "recoveryVirtualMachineScaleSetId", "type": "str"},
+ "recovery_capacity_reservation_group_id": {"key": "recoveryCapacityReservationGroupId", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ recovery_cloud_service_id: Optional[str] = None,
+ recovery_resource_group_id: Optional[str] = None,
+ managed_disk_update_details: Optional[List["_models.A2AVmManagedDiskUpdateDetails"]] = None,
+ recovery_boot_diag_storage_account_id: Optional[str] = None,
+ disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
+ tfo_azure_vm_name: Optional[str] = None,
+ recovery_proximity_placement_group_id: Optional[str] = None,
+ recovery_virtual_machine_scale_set_id: Optional[str] = None,
+ recovery_capacity_reservation_group_id: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword recovery_cloud_service_id: The target cloud service ARM Id (for V1).
+ :paramtype recovery_cloud_service_id: str
+ :keyword recovery_resource_group_id: The target resource group ARM Id (for V2).
+ :paramtype recovery_resource_group_id: str
+ :keyword managed_disk_update_details: Managed disk update details.
+ :paramtype managed_disk_update_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AVmManagedDiskUpdateDetails]
+ :keyword recovery_boot_diag_storage_account_id: The boot diagnostic storage account.
+ :paramtype recovery_boot_diag_storage_account_id: str
+ :keyword disk_encryption_info: The recovery os disk encryption information.
+ :paramtype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :keyword tfo_azure_vm_name: The user given name for Test Failover VM.
+ :paramtype tfo_azure_vm_name: str
+ :keyword recovery_proximity_placement_group_id: The recovery proximity placement group Id.
+ :paramtype recovery_proximity_placement_group_id: str
+ :keyword recovery_virtual_machine_scale_set_id: The recovery virtual machine scale set Id.
+ :paramtype recovery_virtual_machine_scale_set_id: str
+ :keyword recovery_capacity_reservation_group_id: The recovery capacity reservation group Id.
+ :paramtype recovery_capacity_reservation_group_id: str
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "A2A"
+ self.recovery_cloud_service_id = recovery_cloud_service_id
+ self.recovery_resource_group_id = recovery_resource_group_id
+ self.managed_disk_update_details = managed_disk_update_details
+ self.recovery_boot_diag_storage_account_id = recovery_boot_diag_storage_account_id
+ self.disk_encryption_info = disk_encryption_info
+ self.tfo_azure_vm_name = tfo_azure_vm_name
+ self.recovery_proximity_placement_group_id = recovery_proximity_placement_group_id
+ self.recovery_virtual_machine_scale_set_id = recovery_virtual_machine_scale_set_id
+ self.recovery_capacity_reservation_group_id = recovery_capacity_reservation_group_id
+
+
+class A2AVmDiskInputDetails(_serialization.Model):
+ """A2A disk input details.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar disk_uri: The disk Uri. Required.
+ :vartype disk_uri: str
+ :ivar recovery_azure_storage_account_id: The recovery VHD storage account Id. Required.
+ :vartype recovery_azure_storage_account_id: str
+ :ivar primary_staging_azure_storage_account_id: The primary staging storage account Id.
+ Required.
+ :vartype primary_staging_azure_storage_account_id: str
+ """
+
+ _validation = {
+ "disk_uri": {"required": True},
+ "recovery_azure_storage_account_id": {"required": True},
+ "primary_staging_azure_storage_account_id": {"required": True},
+ }
+
+ _attribute_map = {
+ "disk_uri": {"key": "diskUri", "type": "str"},
+ "recovery_azure_storage_account_id": {"key": "recoveryAzureStorageAccountId", "type": "str"},
+ "primary_staging_azure_storage_account_id": {"key": "primaryStagingAzureStorageAccountId", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ disk_uri: str,
+ recovery_azure_storage_account_id: str,
+ primary_staging_azure_storage_account_id: str,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword disk_uri: The disk Uri. Required.
+ :paramtype disk_uri: str
+ :keyword recovery_azure_storage_account_id: The recovery VHD storage account Id. Required.
+ :paramtype recovery_azure_storage_account_id: str
+ :keyword primary_staging_azure_storage_account_id: The primary staging storage account Id.
+ Required.
+ :paramtype primary_staging_azure_storage_account_id: str
+ """
+ super().__init__(**kwargs)
+ self.disk_uri = disk_uri
+ self.recovery_azure_storage_account_id = recovery_azure_storage_account_id
+ self.primary_staging_azure_storage_account_id = primary_staging_azure_storage_account_id
+
+
+class A2AVmManagedDiskInputDetails(_serialization.Model):
+ """A2A managed disk input details.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar disk_id: The disk Id. Required.
+ :vartype disk_id: str
+ :ivar primary_staging_azure_storage_account_id: The primary staging storage account Arm Id.
+ Required.
+ :vartype primary_staging_azure_storage_account_id: str
+ :ivar recovery_resource_group_id: The target resource group Arm Id. Required.
+ :vartype recovery_resource_group_id: str
+ :ivar recovery_replica_disk_account_type: The replica disk type. Its an optional value and will
+ be same as source disk type if not user provided.
+ :vartype recovery_replica_disk_account_type: str
+ :ivar recovery_target_disk_account_type: The target disk type after failover. Its an optional
+ value and will be same as source disk type if not user provided.
+ :vartype recovery_target_disk_account_type: str
+ :ivar recovery_disk_encryption_set_id: The recovery disk encryption set Id.
+ :vartype recovery_disk_encryption_set_id: str
+ :ivar disk_encryption_info: The recovery disk encryption information (for one / single pass
+ flows).
+ :vartype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ """
+
+ _validation = {
+ "disk_id": {"required": True},
+ "primary_staging_azure_storage_account_id": {"required": True},
+ "recovery_resource_group_id": {"required": True},
+ }
+
+ _attribute_map = {
+ "disk_id": {"key": "diskId", "type": "str"},
+ "primary_staging_azure_storage_account_id": {"key": "primaryStagingAzureStorageAccountId", "type": "str"},
+ "recovery_resource_group_id": {"key": "recoveryResourceGroupId", "type": "str"},
+ "recovery_replica_disk_account_type": {"key": "recoveryReplicaDiskAccountType", "type": "str"},
+ "recovery_target_disk_account_type": {"key": "recoveryTargetDiskAccountType", "type": "str"},
+ "recovery_disk_encryption_set_id": {"key": "recoveryDiskEncryptionSetId", "type": "str"},
+ "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
+ }
+
+ def __init__(
+ self,
+ *,
+ disk_id: str,
+ primary_staging_azure_storage_account_id: str,
+ recovery_resource_group_id: str,
+ recovery_replica_disk_account_type: Optional[str] = None,
+ recovery_target_disk_account_type: Optional[str] = None,
+ recovery_disk_encryption_set_id: Optional[str] = None,
+ disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword disk_id: The disk Id. Required.
+ :paramtype disk_id: str
+ :keyword primary_staging_azure_storage_account_id: The primary staging storage account Arm Id.
+ Required.
+ :paramtype primary_staging_azure_storage_account_id: str
+ :keyword recovery_resource_group_id: The target resource group Arm Id. Required.
+ :paramtype recovery_resource_group_id: str
+ :keyword recovery_replica_disk_account_type: The replica disk type. Its an optional value and
+ will be same as source disk type if not user provided.
+ :paramtype recovery_replica_disk_account_type: str
+ :keyword recovery_target_disk_account_type: The target disk type after failover. Its an
+ optional value and will be same as source disk type if not user provided.
+ :paramtype recovery_target_disk_account_type: str
+ :keyword recovery_disk_encryption_set_id: The recovery disk encryption set Id.
+ :paramtype recovery_disk_encryption_set_id: str
+ :keyword disk_encryption_info: The recovery disk encryption information (for one / single pass
+ flows).
+ :paramtype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ """
+ super().__init__(**kwargs)
+ self.disk_id = disk_id
+ self.primary_staging_azure_storage_account_id = primary_staging_azure_storage_account_id
+ self.recovery_resource_group_id = recovery_resource_group_id
+ self.recovery_replica_disk_account_type = recovery_replica_disk_account_type
+ self.recovery_target_disk_account_type = recovery_target_disk_account_type
+ self.recovery_disk_encryption_set_id = recovery_disk_encryption_set_id
+ self.disk_encryption_info = disk_encryption_info
+
+
+class A2AVmManagedDiskUpdateDetails(_serialization.Model):
+ """A2A Vm managed disk update details.
+
+ :ivar disk_id: The disk Id.
+ :vartype disk_id: str
+ :ivar recovery_target_disk_account_type: The target disk type before failover.
+ :vartype recovery_target_disk_account_type: str
+ :ivar recovery_replica_disk_account_type: The replica disk type before failover.
+ :vartype recovery_replica_disk_account_type: str
+ :ivar disk_encryption_info: The recovery os disk encryption information.
+ :vartype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :ivar failover_disk_name: The target disk name for unplanned failover operation.
+ :vartype failover_disk_name: str
+ :ivar tfo_disk_name: The target disk name for test failover operation.
+ :vartype tfo_disk_name: str
+ """
+
+ _attribute_map = {
+ "disk_id": {"key": "diskId", "type": "str"},
+ "recovery_target_disk_account_type": {"key": "recoveryTargetDiskAccountType", "type": "str"},
+ "recovery_replica_disk_account_type": {"key": "recoveryReplicaDiskAccountType", "type": "str"},
+ "disk_encryption_info": {"key": "diskEncryptionInfo", "type": "DiskEncryptionInfo"},
+ "failover_disk_name": {"key": "failoverDiskName", "type": "str"},
+ "tfo_disk_name": {"key": "tfoDiskName", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ disk_id: Optional[str] = None,
+ recovery_target_disk_account_type: Optional[str] = None,
+ recovery_replica_disk_account_type: Optional[str] = None,
+ disk_encryption_info: Optional["_models.DiskEncryptionInfo"] = None,
+ failover_disk_name: Optional[str] = None,
+ tfo_disk_name: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword disk_id: The disk Id.
+ :paramtype disk_id: str
+ :keyword recovery_target_disk_account_type: The target disk type before failover.
+ :paramtype recovery_target_disk_account_type: str
+ :keyword recovery_replica_disk_account_type: The replica disk type before failover.
+ :paramtype recovery_replica_disk_account_type: str
+ :keyword disk_encryption_info: The recovery os disk encryption information.
+ :paramtype disk_encryption_info:
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskEncryptionInfo
+ :keyword failover_disk_name: The target disk name for unplanned failover operation.
+ :paramtype failover_disk_name: str
+ :keyword tfo_disk_name: The target disk name for test failover operation.
+ :paramtype tfo_disk_name: str
+ """
+ super().__init__(**kwargs)
+ self.disk_id = disk_id
+ self.recovery_target_disk_account_type = recovery_target_disk_account_type
+ self.recovery_replica_disk_account_type = recovery_replica_disk_account_type
+ self.disk_encryption_info = disk_encryption_info
+ self.failover_disk_name = failover_disk_name
+ self.tfo_disk_name = tfo_disk_name
+
+
+class A2AZoneDetails(_serialization.Model):
+ """Zone details data.
+
+ :ivar source: Source zone info.
+ :vartype source: str
+ :ivar target: The target zone info.
+ :vartype target: str
+ """
+
+ _attribute_map = {
+ "source": {"key": "source", "type": "str"},
+ "target": {"key": "target", "type": "str"},
+ }
+
+ def __init__(self, *, source: Optional[str] = None, target: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword source: Source zone info.
+ :paramtype source: str
+ :keyword target: The target zone info.
+ :paramtype target: str
+ """
+ super().__init__(**kwargs)
+ self.source = source
+ self.target = target
+
+
+class AddDisksInput(_serialization.Model):
+ """Input for add disk(s) operation.
+
+ :ivar properties: Add disks input properties.
+ :vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInputProperties
+ """
+
+ _attribute_map = {
+ "properties": {"key": "properties", "type": "AddDisksInputProperties"},
+ }
+
+ def __init__(self, *, properties: Optional["_models.AddDisksInputProperties"] = None, **kwargs: Any) -> None:
+ """
+ :keyword properties: Add disks input properties.
+ :paramtype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInputProperties
+ """
+ super().__init__(**kwargs)
+ self.properties = properties
+
+
+class AddDisksInputProperties(_serialization.Model):
+ """Add Disks input properties.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar provider_specific_details: The ReplicationProviderInput. For HyperVReplicaAzure provider,
+ it will be AzureEnableProtectionInput object. For San provider, it will be
+ SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null. Required.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksProviderSpecificInput
+ """
+
+ _validation = {
+ "provider_specific_details": {"required": True},
+ }
+
+ _attribute_map = {
+ "provider_specific_details": {"key": "providerSpecificDetails", "type": "AddDisksProviderSpecificInput"},
+ }
+
+ def __init__(self, *, provider_specific_details: "_models.AddDisksProviderSpecificInput", **kwargs: Any) -> None:
+ """
+ :keyword provider_specific_details: The ReplicationProviderInput. For HyperVReplicaAzure
+ provider, it will be AzureEnableProtectionInput object. For San provider, it will be
+ SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null. Required.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksProviderSpecificInput
+ """
+ super().__init__(**kwargs)
+ self.provider_specific_details = provider_specific_details
+
+
+class AddRecoveryServicesProviderInput(_serialization.Model):
+ """Input required to add a provider.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar properties: The properties of an add provider request. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInputProperties
+ """
+
+ _validation = {
+ "properties": {"required": True},
+ }
+
+ _attribute_map = {
+ "properties": {"key": "properties", "type": "AddRecoveryServicesProviderInputProperties"},
+ }
+
+ def __init__(self, *, properties: "_models.AddRecoveryServicesProviderInputProperties", **kwargs: Any) -> None:
+ """
+ :keyword properties: The properties of an add provider request. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInputProperties
+ """
+ super().__init__(**kwargs)
+ self.properties = properties
+
+
+class AddRecoveryServicesProviderInputProperties(_serialization.Model): # pylint: disable=name-too-long
+ """The properties of an add provider request.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar machine_name: The name of the machine where the provider is getting added. Required.
+ :vartype machine_name: str
+ :ivar machine_id: The Id of the machine where the provider is getting added.
+ :vartype machine_id: str
+ :ivar bios_id: The Bios Id of the machine.
+ :vartype bios_id: str
+ :ivar authentication_identity_input: The identity provider input for DRA authentication.
+ Required.
+ :vartype authentication_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :ivar resource_access_identity_input: The identity provider input for resource access.
+ Required.
+ :vartype resource_access_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :ivar data_plane_authentication_identity_input: The identity provider input for data plane
+ authentication.
+ :vartype data_plane_authentication_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ """
+
+ _validation = {
+ "machine_name": {"required": True},
+ "authentication_identity_input": {"required": True},
+ "resource_access_identity_input": {"required": True},
+ }
+
+ _attribute_map = {
+ "machine_name": {"key": "machineName", "type": "str"},
+ "machine_id": {"key": "machineId", "type": "str"},
+ "bios_id": {"key": "biosId", "type": "str"},
+ "authentication_identity_input": {"key": "authenticationIdentityInput", "type": "IdentityProviderInput"},
+ "resource_access_identity_input": {"key": "resourceAccessIdentityInput", "type": "IdentityProviderInput"},
+ "data_plane_authentication_identity_input": {
+ "key": "dataPlaneAuthenticationIdentityInput",
+ "type": "IdentityProviderInput",
+ },
+ }
+
+ def __init__(
+ self,
+ *,
+ machine_name: str,
+ authentication_identity_input: "_models.IdentityProviderInput",
+ resource_access_identity_input: "_models.IdentityProviderInput",
+ machine_id: Optional[str] = None,
+ bios_id: Optional[str] = None,
+ data_plane_authentication_identity_input: Optional["_models.IdentityProviderInput"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword machine_name: The name of the machine where the provider is getting added. Required.
+ :paramtype machine_name: str
+ :keyword machine_id: The Id of the machine where the provider is getting added.
+ :paramtype machine_id: str
+ :keyword bios_id: The Bios Id of the machine.
+ :paramtype bios_id: str
+ :keyword authentication_identity_input: The identity provider input for DRA authentication.
+ Required.
+ :paramtype authentication_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :keyword resource_access_identity_input: The identity provider input for resource access.
+ Required.
+ :paramtype resource_access_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :keyword data_plane_authentication_identity_input: The identity provider input for data plane
+ authentication.
+ :paramtype data_plane_authentication_identity_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ """
+ super().__init__(**kwargs)
+ self.machine_name = machine_name
+ self.machine_id = machine_id
+ self.bios_id = bios_id
+ self.authentication_identity_input = authentication_identity_input
+ self.resource_access_identity_input = resource_access_identity_input
+ self.data_plane_authentication_identity_input = data_plane_authentication_identity_input
+
+
+class AddVCenterRequest(_serialization.Model):
+ """Input required to add vCenter.
+
+ :ivar properties: The properties of an add vCenter request.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequestProperties
+ """
+
+ _attribute_map = {
+ "properties": {"key": "properties", "type": "AddVCenterRequestProperties"},
+ }
+
+ def __init__(self, *, properties: Optional["_models.AddVCenterRequestProperties"] = None, **kwargs: Any) -> None:
+ """
+ :keyword properties: The properties of an add vCenter request.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequestProperties
+ """
+ super().__init__(**kwargs)
+ self.properties = properties
+
+
+class AddVCenterRequestProperties(_serialization.Model):
+ """The properties of an add vCenter request.
+
+ :ivar friendly_name: The friendly name of the vCenter.
+ :vartype friendly_name: str
+ :ivar ip_address: The IP address of the vCenter to be discovered.
+ :vartype ip_address: str
+ :ivar process_server_id: The process server Id from where the discovery is orchestrated.
+ :vartype process_server_id: str
+ :ivar port: The port number for discovery.
+ :vartype port: str
+ :ivar run_as_account_id: The account Id which has privileges to discover the vCenter.
+ :vartype run_as_account_id: str
+ """
+
+ _attribute_map = {
+ "friendly_name": {"key": "friendlyName", "type": "str"},
+ "ip_address": {"key": "ipAddress", "type": "str"},
+ "process_server_id": {"key": "processServerId", "type": "str"},
+ "port": {"key": "port", "type": "str"},
+ "run_as_account_id": {"key": "runAsAccountId", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ friendly_name: Optional[str] = None,
+ ip_address: Optional[str] = None,
+ process_server_id: Optional[str] = None,
+ port: Optional[str] = None,
+ run_as_account_id: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword friendly_name: The friendly name of the vCenter.
+ :paramtype friendly_name: str
+ :keyword ip_address: The IP address of the vCenter to be discovered.
+ :paramtype ip_address: str
+ :keyword process_server_id: The process server Id from where the discovery is orchestrated.
+ :paramtype process_server_id: str
+ :keyword port: The port number for discovery.
+ :paramtype port: str
+ :keyword run_as_account_id: The account Id which has privileges to discover the vCenter.
+ :paramtype run_as_account_id: str
+ """
+ super().__init__(**kwargs)
+ self.friendly_name = friendly_name
+ self.ip_address = ip_address
+ self.process_server_id = process_server_id
+ self.port = port
+ self.run_as_account_id = run_as_account_id
+
+
+class AgentDetails(_serialization.Model):
+ """Agent details.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar agent_id: The Id of the agent running on the server.
+ :vartype agent_id: str
+ :ivar machine_id: The Id of the machine to which the agent is registered.
+ :vartype machine_id: str
+ :ivar bios_id: The machine BIOS Id.
+ :vartype bios_id: str
+ :ivar fqdn: The machine FQDN.
+ :vartype fqdn: str
+ :ivar disks: The disks.
+ :vartype disks: list[~azure.mgmt.recoveryservicessiterecovery.models.AgentDiskDetails]
+ """
+
+ _validation = {
+ "agent_id": {"readonly": True},
+ "machine_id": {"readonly": True},
+ "bios_id": {"readonly": True},
+ "fqdn": {"readonly": True},
+ "disks": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "agent_id": {"key": "agentId", "type": "str"},
+ "machine_id": {"key": "machineId", "type": "str"},
+ "bios_id": {"key": "biosId", "type": "str"},
+ "fqdn": {"key": "fqdn", "type": "str"},
+ "disks": {"key": "disks", "type": "[AgentDiskDetails]"},
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.agent_id = None
+ self.machine_id = None
+ self.bios_id = None
+ self.fqdn = None
+ self.disks = None
+
+
+class AgentDiskDetails(_serialization.Model):
+ """Agent disk details.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar disk_id: The disk Id.
+ :vartype disk_id: str
+ :ivar disk_name: The disk name.
+ :vartype disk_name: str
+ :ivar is_os_disk: A value indicating whether the disk is the OS disk.
+ :vartype is_os_disk: str
+ :ivar capacity_in_bytes: The disk capacity in bytes.
+ :vartype capacity_in_bytes: int
+ :ivar lun_id: The lun of disk.
+ :vartype lun_id: int
+ """
+
+ _validation = {
+ "disk_id": {"readonly": True},
+ "disk_name": {"readonly": True},
+ "is_os_disk": {"readonly": True},
+ "capacity_in_bytes": {"readonly": True},
+ "lun_id": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "disk_id": {"key": "diskId", "type": "str"},
+ "disk_name": {"key": "diskName", "type": "str"},
+ "is_os_disk": {"key": "isOSDisk", "type": "str"},
+ "capacity_in_bytes": {"key": "capacityInBytes", "type": "int"},
+ "lun_id": {"key": "lunId", "type": "int"},
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.disk_id = None
+ self.disk_name = None
+ self.is_os_disk = None
+ self.capacity_in_bytes = None
+ self.lun_id = None
+
+
+class Resource(_serialization.Model):
+ """Azure resource.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar id: Resource Id.
+ :vartype id: str
+ :ivar name: Resource Name.
+ :vartype name: str
+ :ivar type: Resource Type.
+ :vartype type: str
+ :ivar location: Resource Location.
+ :vartype location: str
+ """
+
+ _validation = {
+ "id": {"readonly": True},
+ "name": {"readonly": True},
+ "type": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "id": {"key": "id", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "type": {"key": "type", "type": "str"},
+ "location": {"key": "location", "type": "str"},
+ }
+
+ def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword location: Resource Location.
+ :paramtype location: str
+ """
+ super().__init__(**kwargs)
+ self.id = None
+ self.name = None
+ self.type = None
+ self.location = location
+
+
+class Alert(Resource):
+ """Implements the Alert class.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar id: Resource Id.
+ :vartype id: str
+ :ivar name: Resource Name.
+ :vartype name: str
+ :ivar type: Resource Type.
+ :vartype type: str
+ :ivar location: Resource Location.
+ :vartype location: str
+ :ivar properties: Alert related data.
+ :vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AlertProperties
+ """
+
+ _validation = {
+ "id": {"readonly": True},
+ "name": {"readonly": True},
+ "type": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "id": {"key": "id", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "type": {"key": "type", "type": "str"},
+ "location": {"key": "location", "type": "str"},
+ "properties": {"key": "properties", "type": "AlertProperties"},
+ }
+
+ def __init__(
+ self, *, location: Optional[str] = None, properties: Optional["_models.AlertProperties"] = None, **kwargs: Any
+ ) -> None:
+ """
+ :keyword location: Resource Location.
+ :paramtype location: str
+ :keyword properties: Alert related data.
+ :paramtype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AlertProperties
+ """
+ super().__init__(location=location, **kwargs)
+ self.properties = properties
+
+
+class AlertCollection(_serialization.Model):
+ """Collection of alerts.
+
+ :ivar value: The list of alerts.
+ :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
+ :ivar next_link: The value of next link.
+ :vartype next_link: str
+ """
+
+ _attribute_map = {
+ "value": {"key": "value", "type": "[Alert]"},
+ "next_link": {"key": "nextLink", "type": "str"},
+ }
+
+ def __init__(
+ self, *, value: Optional[List["_models.Alert"]] = None, next_link: Optional[str] = None, **kwargs: Any
+ ) -> None:
+ """
+ :keyword value: The list of alerts.
+ :paramtype value: list[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
+ :keyword next_link: The value of next link.
+ :paramtype next_link: str
+ """
+ super().__init__(**kwargs)
+ self.value = value
+ self.next_link = next_link
+
+
+class AlertProperties(_serialization.Model):
+ """The properties of an alert.
+
+ :ivar send_to_owners: A value indicating whether to send email to subscription administrator.
+ :vartype send_to_owners: str
+ :ivar custom_email_addresses: The custom email address for sending emails.
+ :vartype custom_email_addresses: list[str]
+ :ivar locale: The locale for the email notification.
+ :vartype locale: str
+ """
+
+ _attribute_map = {
+ "send_to_owners": {"key": "sendToOwners", "type": "str"},
+ "custom_email_addresses": {"key": "customEmailAddresses", "type": "[str]"},
+ "locale": {"key": "locale", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ send_to_owners: Optional[str] = None,
+ custom_email_addresses: Optional[List[str]] = None,
+ locale: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword send_to_owners: A value indicating whether to send email to subscription
+ administrator.
+ :paramtype send_to_owners: str
+ :keyword custom_email_addresses: The custom email address for sending emails.
+ :paramtype custom_email_addresses: list[str]
+ :keyword locale: The locale for the email notification.
+ :paramtype locale: str
+ """
+ super().__init__(**kwargs)
+ self.send_to_owners = send_to_owners
+ self.custom_email_addresses = custom_email_addresses
+ self.locale = locale
+
+
+class ApplianceCollection(_serialization.Model):
+ """Collection of appliance details.
+
+ :ivar value: The appliance details.
+ :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationAppliance]
+ :ivar next_link: The value of next link.
+ :vartype next_link: str
+ """
+
+ _attribute_map = {
+ "value": {"key": "value", "type": "[ReplicationAppliance]"},
+ "next_link": {"key": "nextLink", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ value: Optional[List["_models.ReplicationAppliance"]] = None,
+ next_link: Optional[str] = None,
**kwargs: Any
) -> None:
"""
- :keyword machine_name: The name of the machine where the provider is getting added. Required.
- :paramtype machine_name: str
- :keyword machine_id: The Id of the machine where the provider is getting added.
- :paramtype machine_id: str
- :keyword bios_id: The Bios Id of the machine.
- :paramtype bios_id: str
- :keyword authentication_identity_input: The identity provider input for DRA authentication.
- Required.
- :paramtype authentication_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
- :keyword resource_access_identity_input: The identity provider input for resource access.
- Required.
- :paramtype resource_access_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
- :keyword data_plane_authentication_identity_input: The identity provider input for data plane
- authentication.
- :paramtype data_plane_authentication_identity_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.IdentityProviderInput
+ :keyword value: The appliance details.
+ :paramtype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationAppliance]
+ :keyword next_link: The value of next link.
+ :paramtype next_link: str
"""
super().__init__(**kwargs)
- self.machine_name = machine_name
- self.machine_id = machine_id
- self.bios_id = bios_id
- self.authentication_identity_input = authentication_identity_input
- self.resource_access_identity_input = resource_access_identity_input
- self.data_plane_authentication_identity_input = data_plane_authentication_identity_input
+ self.value = value
+ self.next_link = next_link
-class AddVCenterRequest(_serialization.Model):
- """Input required to add vCenter.
+class ApplianceMonitoringDetails(_serialization.Model):
+ """Appliance details of the migration item.
- :ivar properties: The properties of an add vCenter request.
- :vartype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequestProperties
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar cpu_details: The appliance CPU details.
+ :vartype cpu_details: ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
+ :ivar ram_details: The appliance RAM details.
+ :vartype ram_details: ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
+ :ivar datastore_snapshot: The appliance datastore snapshot details.
+ :vartype datastore_snapshot:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.DataStoreUtilizationDetails]
+ :ivar disks_replication_details: The disk replication details.
+ :vartype disks_replication_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
+ :ivar esxi_nfc_buffer: The ESXi NFC buffer details.
+ :vartype esxi_nfc_buffer:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
+ :ivar network_bandwidth: The appliance network bandwidth details.
+ :vartype network_bandwidth:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
"""
+ _validation = {
+ "cpu_details": {"readonly": True},
+ "ram_details": {"readonly": True},
+ "datastore_snapshot": {"readonly": True},
+ "disks_replication_details": {"readonly": True},
+ "esxi_nfc_buffer": {"readonly": True},
+ "network_bandwidth": {"readonly": True},
+ }
+
_attribute_map = {
- "properties": {"key": "properties", "type": "AddVCenterRequestProperties"},
+ "cpu_details": {"key": "cpuDetails", "type": "ApplianceResourceDetails"},
+ "ram_details": {"key": "ramDetails", "type": "ApplianceResourceDetails"},
+ "datastore_snapshot": {"key": "datastoreSnapshot", "type": "[DataStoreUtilizationDetails]"},
+ "disks_replication_details": {"key": "disksReplicationDetails", "type": "ApplianceResourceDetails"},
+ "esxi_nfc_buffer": {"key": "esxiNfcBuffer", "type": "ApplianceResourceDetails"},
+ "network_bandwidth": {"key": "networkBandwidth", "type": "ApplianceResourceDetails"},
}
- def __init__(self, *, properties: Optional["_models.AddVCenterRequestProperties"] = None, **kwargs: Any) -> None:
- """
- :keyword properties: The properties of an add vCenter request.
- :paramtype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequestProperties
- """
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
- self.properties = properties
+ self.cpu_details = None
+ self.ram_details = None
+ self.datastore_snapshot = None
+ self.disks_replication_details = None
+ self.esxi_nfc_buffer = None
+ self.network_bandwidth = None
-class AddVCenterRequestProperties(_serialization.Model):
- """The properties of an add vCenter request.
+class ApplianceQueryParameter(_serialization.Model):
+ """Query parameter to get appliance.
- :ivar friendly_name: The friendly name of the vCenter.
- :vartype friendly_name: str
- :ivar ip_address: The IP address of the vCenter to be discovered.
- :vartype ip_address: str
- :ivar process_server_id: The process server Id from where the discovery is orchestrated.
- :vartype process_server_id: str
- :ivar port: The port number for discovery.
- :vartype port: str
- :ivar run_as_account_id: The account Id which has privileges to discover the vCenter.
- :vartype run_as_account_id: str
+ :ivar provider_type: The providerType to be used for fetching appliance details.
+ :vartype provider_type: str
"""
_attribute_map = {
- "friendly_name": {"key": "friendlyName", "type": "str"},
- "ip_address": {"key": "ipAddress", "type": "str"},
- "process_server_id": {"key": "processServerId", "type": "str"},
- "port": {"key": "port", "type": "str"},
- "run_as_account_id": {"key": "runAsAccountId", "type": "str"},
+ "provider_type": {"key": "providerType", "type": "str"},
}
- def __init__(
- self,
- *,
- friendly_name: Optional[str] = None,
- ip_address: Optional[str] = None,
- process_server_id: Optional[str] = None,
- port: Optional[str] = None,
- run_as_account_id: Optional[str] = None,
- **kwargs: Any
- ) -> None:
+ def __init__(self, *, provider_type: Optional[str] = None, **kwargs: Any) -> None:
"""
- :keyword friendly_name: The friendly name of the vCenter.
- :paramtype friendly_name: str
- :keyword ip_address: The IP address of the vCenter to be discovered.
- :paramtype ip_address: str
- :keyword process_server_id: The process server Id from where the discovery is orchestrated.
- :paramtype process_server_id: str
- :keyword port: The port number for discovery.
- :paramtype port: str
- :keyword run_as_account_id: The account Id which has privileges to discover the vCenter.
- :paramtype run_as_account_id: str
+ :keyword provider_type: The providerType to be used for fetching appliance details.
+ :paramtype provider_type: str
"""
super().__init__(**kwargs)
- self.friendly_name = friendly_name
- self.ip_address = ip_address
- self.process_server_id = process_server_id
- self.port = port
- self.run_as_account_id = run_as_account_id
+ self.provider_type = provider_type
-class AgentDetails(_serialization.Model):
- """Agent details.
+class ApplianceResourceDetails(_serialization.Model):
+ """Details of the appliance resource.
Variables are only populated by the server, and will be ignored when sending a request.
- :ivar agent_id: The Id of the agent running on the server.
- :vartype agent_id: str
- :ivar machine_id: The Id of the machine to which the agent is registered.
- :vartype machine_id: str
- :ivar bios_id: The machine BIOS Id.
- :vartype bios_id: str
- :ivar fqdn: The machine FQDN.
- :vartype fqdn: str
- :ivar disks: The disks.
- :vartype disks: list[~azure.mgmt.recoveryservicessiterecovery.models.AgentDiskDetails]
+ :ivar capacity: A value indicating the total capacity of appliance resource.
+ :vartype capacity: int
+ :ivar process_utilization: A value indicating the utilization percentage by gateway agent on
+ appliance.
+ :vartype process_utilization: float
+ :ivar total_utilization: A value indicating the total utilization percentage for all processes
+ on the appliance.
+ :vartype total_utilization: float
+ :ivar status: A value indicating the status of appliance resource.
+ :vartype status: str
"""
_validation = {
- "agent_id": {"readonly": True},
- "machine_id": {"readonly": True},
- "bios_id": {"readonly": True},
- "fqdn": {"readonly": True},
- "disks": {"readonly": True},
+ "capacity": {"readonly": True},
+ "process_utilization": {"readonly": True},
+ "total_utilization": {"readonly": True},
+ "status": {"readonly": True},
}
_attribute_map = {
- "agent_id": {"key": "agentId", "type": "str"},
- "machine_id": {"key": "machineId", "type": "str"},
- "bios_id": {"key": "biosId", "type": "str"},
- "fqdn": {"key": "fqdn", "type": "str"},
- "disks": {"key": "disks", "type": "[AgentDiskDetails]"},
+ "capacity": {"key": "capacity", "type": "int"},
+ "process_utilization": {"key": "processUtilization", "type": "float"},
+ "total_utilization": {"key": "totalUtilization", "type": "float"},
+ "status": {"key": "status", "type": "str"},
}
def __init__(self, **kwargs: Any) -> None:
""" """
super().__init__(**kwargs)
- self.agent_id = None
- self.machine_id = None
- self.bios_id = None
- self.fqdn = None
- self.disks = None
+ self.capacity = None
+ self.process_utilization = None
+ self.total_utilization = None
+ self.status = None
-class AgentDiskDetails(_serialization.Model):
- """Agent disk details.
+class ApplianceSpecificDetails(_serialization.Model):
+ """Appliance specific details.
- Variables are only populated by the server, and will be ignored when sending a request.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ InMageRcmApplianceSpecificDetails
- :ivar disk_id: The disk Id.
- :vartype disk_id: str
- :ivar disk_name: The disk name.
- :vartype disk_name: str
- :ivar is_os_disk: A value indicating whether the disk is the OS disk.
- :vartype is_os_disk: str
- :ivar capacity_in_bytes: The disk capacity in bytes.
- :vartype capacity_in_bytes: int
- :ivar lun_id: The lun of disk.
- :vartype lun_id: int
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
+ :vartype instance_type: str
"""
_validation = {
- "disk_id": {"readonly": True},
- "disk_name": {"readonly": True},
- "is_os_disk": {"readonly": True},
- "capacity_in_bytes": {"readonly": True},
- "lun_id": {"readonly": True},
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {"instance_type": {"InMageRcm": "InMageRcmApplianceSpecificDetails"}}
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class ApplyClusterRecoveryPointInput(_serialization.Model):
+ """Input definition for apply cluster recovery point.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar properties: The properties to apply cluster recovery point input. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInputProperties
+ """
+
+ _validation = {
+ "properties": {"required": True},
+ }
+
+ _attribute_map = {
+ "properties": {"key": "properties", "type": "ApplyClusterRecoveryPointInputProperties"},
+ }
+
+ def __init__(self, *, properties: "_models.ApplyClusterRecoveryPointInputProperties", **kwargs: Any) -> None:
+ """
+ :keyword properties: The properties to apply cluster recovery point input. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInputProperties
+ """
+ super().__init__(**kwargs)
+ self.properties = properties
+
+
+class ApplyClusterRecoveryPointInputProperties(_serialization.Model):
+ """Input definition for apply cluster recovery point properties.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :vartype cluster_recovery_point_id: str
+ :ivar individual_node_recovery_points: The list of individual node recovery points.
+ :vartype individual_node_recovery_points: list[str]
+ :ivar provider_specific_details: The provider specific input for applying cluster recovery
+ point. Required.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointProviderSpecificInput
+ """
+
+ _validation = {
+ "provider_specific_details": {"required": True},
}
_attribute_map = {
- "disk_id": {"key": "diskId", "type": "str"},
- "disk_name": {"key": "diskName", "type": "str"},
- "is_os_disk": {"key": "isOSDisk", "type": "str"},
- "capacity_in_bytes": {"key": "capacityInBytes", "type": "int"},
- "lun_id": {"key": "lunId", "type": "int"},
+ "cluster_recovery_point_id": {"key": "clusterRecoveryPointId", "type": "str"},
+ "individual_node_recovery_points": {"key": "individualNodeRecoveryPoints", "type": "[str]"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ApplyClusterRecoveryPointProviderSpecificInput",
+ },
}
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__(
+ self,
+ *,
+ provider_specific_details: "_models.ApplyClusterRecoveryPointProviderSpecificInput",
+ cluster_recovery_point_id: Optional[str] = None,
+ individual_node_recovery_points: Optional[List[str]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword cluster_recovery_point_id: The cluster recovery point id to be passed to failover to a
+ particular recovery point.
+ :paramtype cluster_recovery_point_id: str
+ :keyword individual_node_recovery_points: The list of individual node recovery points.
+ :paramtype individual_node_recovery_points: list[str]
+ :keyword provider_specific_details: The provider specific input for applying cluster recovery
+ point. Required.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointProviderSpecificInput
+ """
super().__init__(**kwargs)
- self.disk_id = None
- self.disk_name = None
- self.is_os_disk = None
- self.capacity_in_bytes = None
- self.lun_id = None
+ self.cluster_recovery_point_id = cluster_recovery_point_id
+ self.individual_node_recovery_points = individual_node_recovery_points
+ self.provider_specific_details = provider_specific_details
-class Resource(_serialization.Model):
- """Azure resource.
+class ApplyRecoveryPointInput(_serialization.Model):
+ """Input to apply recovery point.
- Variables are only populated by the server, and will be ignored when sending a request.
+ All required parameters must be populated in order to send to server.
- :ivar id: Resource Id.
- :vartype id: str
- :ivar name: Resource Name.
- :vartype name: str
- :ivar type: Resource Type.
- :vartype type: str
- :ivar location: Resource Location.
- :vartype location: str
+ :ivar properties: The input properties to apply recovery point. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInputProperties
"""
_validation = {
- "id": {"readonly": True},
- "name": {"readonly": True},
- "type": {"readonly": True},
+ "properties": {"required": True},
}
_attribute_map = {
- "id": {"key": "id", "type": "str"},
- "name": {"key": "name", "type": "str"},
- "type": {"key": "type", "type": "str"},
- "location": {"key": "location", "type": "str"},
+ "properties": {"key": "properties", "type": "ApplyRecoveryPointInputProperties"},
}
- def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(self, *, properties: "_models.ApplyRecoveryPointInputProperties", **kwargs: Any) -> None:
"""
- :keyword location: Resource Location.
- :paramtype location: str
+ :keyword properties: The input properties to apply recovery point. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInputProperties
"""
super().__init__(**kwargs)
- self.id = None
- self.name = None
- self.type = None
- self.location = location
+ self.properties = properties
-class Alert(Resource):
- """Implements the Alert class.
+class ApplyRecoveryPointInputProperties(_serialization.Model):
+ """Input properties to apply recovery point.
- Variables are only populated by the server, and will be ignored when sending a request.
+ All required parameters must be populated in order to send to server.
- :ivar id: Resource Id.
- :vartype id: str
- :ivar name: Resource Name.
- :vartype name: str
- :ivar type: Resource Type.
- :vartype type: str
- :ivar location: Resource Location.
- :vartype location: str
- :ivar properties: Alert related data.
- :vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AlertProperties
+ :ivar recovery_point_id: The recovery point Id.
+ :vartype recovery_point_id: str
+ :ivar provider_specific_details: Provider specific input for applying recovery point. Required.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointProviderSpecificInput
"""
_validation = {
- "id": {"readonly": True},
- "name": {"readonly": True},
- "type": {"readonly": True},
+ "provider_specific_details": {"required": True},
}
_attribute_map = {
- "id": {"key": "id", "type": "str"},
- "name": {"key": "name", "type": "str"},
- "type": {"key": "type", "type": "str"},
- "location": {"key": "location", "type": "str"},
- "properties": {"key": "properties", "type": "AlertProperties"},
+ "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ApplyRecoveryPointProviderSpecificInput",
+ },
}
def __init__(
- self, *, location: Optional[str] = None, properties: Optional["_models.AlertProperties"] = None, **kwargs: Any
+ self,
+ *,
+ provider_specific_details: "_models.ApplyRecoveryPointProviderSpecificInput",
+ recovery_point_id: Optional[str] = None,
+ **kwargs: Any
) -> None:
"""
- :keyword location: Resource Location.
- :paramtype location: str
- :keyword properties: Alert related data.
- :paramtype properties: ~azure.mgmt.recoveryservicessiterecovery.models.AlertProperties
+ :keyword recovery_point_id: The recovery point Id.
+ :paramtype recovery_point_id: str
+ :keyword provider_specific_details: Provider specific input for applying recovery point.
+ Required.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointProviderSpecificInput
"""
- super().__init__(location=location, **kwargs)
- self.properties = properties
+ super().__init__(**kwargs)
+ self.recovery_point_id = recovery_point_id
+ self.provider_specific_details = provider_specific_details
-class AlertCollection(_serialization.Model):
- """Collection of alerts.
+class JobDetails(_serialization.Model):
+ """Job details based on specific job type.
- :ivar value: The list of alerts.
- :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
- :ivar next_link: The value of next link.
- :vartype next_link: str
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ AsrJobDetails, ClusterFailoverJobDetails, ClusterSwitchProtectionJobDetails,
+ ClusterTestFailoverJobDetails, ExportJobDetails, FailoverJobDetails,
+ SwitchProtectionJobDetails, TestFailoverJobDetails
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
+ values). Required.
+ :vartype instance_type: str
+ :ivar affected_object_details: The affected object properties like source server, source cloud,
+ target server, target cloud etc. based on the workflow object details.
+ :vartype affected_object_details: dict[str, str]
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "value": {"key": "value", "type": "[Alert]"},
- "next_link": {"key": "nextLink", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
}
- def __init__(
- self, *, value: Optional[List["_models.Alert"]] = None, next_link: Optional[str] = None, **kwargs: Any
- ) -> None:
+ _subtype_map = {
+ "instance_type": {
+ "AsrJobDetails": "AsrJobDetails",
+ "ClusterFailoverJobDetails": "ClusterFailoverJobDetails",
+ "ClusterSwitchProtectionJobDetails": "ClusterSwitchProtectionJobDetails",
+ "ClusterTestFailoverJobDetails": "ClusterTestFailoverJobDetails",
+ "ExportJobDetails": "ExportJobDetails",
+ "FailoverJobDetails": "FailoverJobDetails",
+ "SwitchProtectionJobDetails": "SwitchProtectionJobDetails",
+ "TestFailoverJobDetails": "TestFailoverJobDetails",
+ }
+ }
+
+ def __init__(self, *, affected_object_details: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
"""
- :keyword value: The list of alerts.
- :paramtype value: list[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
- :keyword next_link: The value of next link.
- :paramtype next_link: str
+ :keyword affected_object_details: The affected object properties like source server, source
+ cloud, target server, target cloud etc. based on the workflow object details.
+ :paramtype affected_object_details: dict[str, str]
"""
super().__init__(**kwargs)
- self.value = value
- self.next_link = next_link
+ self.instance_type: Optional[str] = None
+ self.affected_object_details = affected_object_details
-class AlertProperties(_serialization.Model):
- """The properties of an alert.
+class AsrJobDetails(JobDetails):
+ """This class represents job details based on specific job type.
- :ivar send_to_owners: A value indicating whether to send email to subscription administrator.
- :vartype send_to_owners: str
- :ivar custom_email_addresses: The custom email address for sending emails.
- :vartype custom_email_addresses: list[str]
- :ivar locale: The locale for the email notification.
- :vartype locale: str
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
+ values). Required.
+ :vartype instance_type: str
+ :ivar affected_object_details: The affected object properties like source server, source cloud,
+ target server, target cloud etc. based on the workflow object details.
+ :vartype affected_object_details: dict[str, str]
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "send_to_owners": {"key": "sendToOwners", "type": "str"},
- "custom_email_addresses": {"key": "customEmailAddresses", "type": "[str]"},
- "locale": {"key": "locale", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
}
- def __init__(
- self,
- *,
- send_to_owners: Optional[str] = None,
- custom_email_addresses: Optional[List[str]] = None,
- locale: Optional[str] = None,
- **kwargs: Any
- ) -> None:
+ def __init__(self, *, affected_object_details: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
"""
- :keyword send_to_owners: A value indicating whether to send email to subscription
- administrator.
- :paramtype send_to_owners: str
- :keyword custom_email_addresses: The custom email address for sending emails.
- :paramtype custom_email_addresses: list[str]
- :keyword locale: The locale for the email notification.
- :paramtype locale: str
+ :keyword affected_object_details: The affected object properties like source server, source
+ cloud, target server, target cloud etc. based on the workflow object details.
+ :paramtype affected_object_details: dict[str, str]
"""
- super().__init__(**kwargs)
- self.send_to_owners = send_to_owners
- self.custom_email_addresses = custom_email_addresses
- self.locale = locale
+ super().__init__(affected_object_details=affected_object_details, **kwargs)
+ self.instance_type: str = "AsrJobDetails"
-class ApplianceCollection(_serialization.Model):
- """Collection of appliance details.
+class ASRTask(_serialization.Model):
+ """Task of the Job.
- :ivar value: The appliance details.
- :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationAppliance]
- :ivar next_link: The value of next link.
- :vartype next_link: str
+ :ivar task_id: The Id.
+ :vartype task_id: str
+ :ivar name: The unique Task name.
+ :vartype name: str
+ :ivar start_time: The start time.
+ :vartype start_time: ~datetime.datetime
+ :ivar end_time: The end time.
+ :vartype end_time: ~datetime.datetime
+ :ivar allowed_actions: The state/actions applicable on this task.
+ :vartype allowed_actions: list[str]
+ :ivar friendly_name: The name.
+ :vartype friendly_name: str
+ :ivar state: The State. It is one of these values - NotStarted, InProgress, Succeeded, Failed,
+ Cancelled, Suspended or Other.
+ :vartype state: str
+ :ivar state_description: The description of the task state. For example - For Succeeded state,
+ description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.
+ :vartype state_description: str
+ :ivar task_type: The type of task. Details in CustomDetails property depend on this type.
+ :vartype task_type: str
+ :ivar custom_details: The custom task details based on the task type.
+ :vartype custom_details: ~azure.mgmt.recoveryservicessiterecovery.models.TaskTypeDetails
+ :ivar group_task_custom_details: The custom task details based on the task type, if the task
+ type is GroupTaskDetails or one of the types derived from it.
+ :vartype group_task_custom_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.GroupTaskDetails
+ :ivar errors: The task error details.
+ :vartype errors: list[~azure.mgmt.recoveryservicessiterecovery.models.JobErrorDetails]
"""
- _attribute_map = {
- "value": {"key": "value", "type": "[ReplicationAppliance]"},
- "next_link": {"key": "nextLink", "type": "str"},
+ _attribute_map = {
+ "task_id": {"key": "taskId", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "start_time": {"key": "startTime", "type": "iso-8601"},
+ "end_time": {"key": "endTime", "type": "iso-8601"},
+ "allowed_actions": {"key": "allowedActions", "type": "[str]"},
+ "friendly_name": {"key": "friendlyName", "type": "str"},
+ "state": {"key": "state", "type": "str"},
+ "state_description": {"key": "stateDescription", "type": "str"},
+ "task_type": {"key": "taskType", "type": "str"},
+ "custom_details": {"key": "customDetails", "type": "TaskTypeDetails"},
+ "group_task_custom_details": {"key": "groupTaskCustomDetails", "type": "GroupTaskDetails"},
+ "errors": {"key": "errors", "type": "[JobErrorDetails]"},
}
def __init__(
self,
*,
- value: Optional[List["_models.ReplicationAppliance"]] = None,
- next_link: Optional[str] = None,
+ task_id: Optional[str] = None,
+ name: Optional[str] = None,
+ start_time: Optional[datetime.datetime] = None,
+ end_time: Optional[datetime.datetime] = None,
+ allowed_actions: Optional[List[str]] = None,
+ friendly_name: Optional[str] = None,
+ state: Optional[str] = None,
+ state_description: Optional[str] = None,
+ task_type: Optional[str] = None,
+ custom_details: Optional["_models.TaskTypeDetails"] = None,
+ group_task_custom_details: Optional["_models.GroupTaskDetails"] = None,
+ errors: Optional[List["_models.JobErrorDetails"]] = None,
**kwargs: Any
) -> None:
"""
- :keyword value: The appliance details.
- :paramtype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationAppliance]
- :keyword next_link: The value of next link.
- :paramtype next_link: str
+ :keyword task_id: The Id.
+ :paramtype task_id: str
+ :keyword name: The unique Task name.
+ :paramtype name: str
+ :keyword start_time: The start time.
+ :paramtype start_time: ~datetime.datetime
+ :keyword end_time: The end time.
+ :paramtype end_time: ~datetime.datetime
+ :keyword allowed_actions: The state/actions applicable on this task.
+ :paramtype allowed_actions: list[str]
+ :keyword friendly_name: The name.
+ :paramtype friendly_name: str
+ :keyword state: The State. It is one of these values - NotStarted, InProgress, Succeeded,
+ Failed, Cancelled, Suspended or Other.
+ :paramtype state: str
+ :keyword state_description: The description of the task state. For example - For Succeeded
+ state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.
+ :paramtype state_description: str
+ :keyword task_type: The type of task. Details in CustomDetails property depend on this type.
+ :paramtype task_type: str
+ :keyword custom_details: The custom task details based on the task type.
+ :paramtype custom_details: ~azure.mgmt.recoveryservicessiterecovery.models.TaskTypeDetails
+ :keyword group_task_custom_details: The custom task details based on the task type, if the task
+ type is GroupTaskDetails or one of the types derived from it.
+ :paramtype group_task_custom_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.GroupTaskDetails
+ :keyword errors: The task error details.
+ :paramtype errors: list[~azure.mgmt.recoveryservicessiterecovery.models.JobErrorDetails]
"""
super().__init__(**kwargs)
- self.value = value
- self.next_link = next_link
+ self.task_id = task_id
+ self.name = name
+ self.start_time = start_time
+ self.end_time = end_time
+ self.allowed_actions = allowed_actions
+ self.friendly_name = friendly_name
+ self.state = state
+ self.state_description = state_description
+ self.task_type = task_type
+ self.custom_details = custom_details
+ self.group_task_custom_details = group_task_custom_details
+ self.errors = errors
-class ApplianceMonitoringDetails(_serialization.Model):
- """Appliance details of the migration item.
+class TaskTypeDetails(_serialization.Model):
+ """Task details based on specific task type.
- Variables are only populated by the server, and will be ignored when sending a request.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ AutomationRunbookTaskDetails, ConsistencyCheckTaskDetails, JobTaskDetails,
+ ManualActionTaskDetails, ScriptActionTaskDetails, VmNicUpdatesTaskDetails
- :ivar cpu_details: The appliance CPU details.
- :vartype cpu_details: ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
- :ivar ram_details: The appliance RAM details.
- :vartype ram_details: ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
- :ivar datastore_snapshot: The appliance datastore snapshot details.
- :vartype datastore_snapshot:
- list[~azure.mgmt.recoveryservicessiterecovery.models.DataStoreUtilizationDetails]
- :ivar disks_replication_details: The disk replication details.
- :vartype disks_replication_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
- :ivar esxi_nfc_buffer: The ESXi NFC buffer details.
- :vartype esxi_nfc_buffer:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
- :ivar network_bandwidth: The appliance network bandwidth details.
- :vartype network_bandwidth:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplianceResourceDetails
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The type of task details. Required.
+ :vartype instance_type: str
"""
_validation = {
- "cpu_details": {"readonly": True},
- "ram_details": {"readonly": True},
- "datastore_snapshot": {"readonly": True},
- "disks_replication_details": {"readonly": True},
- "esxi_nfc_buffer": {"readonly": True},
- "network_bandwidth": {"readonly": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "cpu_details": {"key": "cpuDetails", "type": "ApplianceResourceDetails"},
- "ram_details": {"key": "ramDetails", "type": "ApplianceResourceDetails"},
- "datastore_snapshot": {"key": "datastoreSnapshot", "type": "[DataStoreUtilizationDetails]"},
- "disks_replication_details": {"key": "disksReplicationDetails", "type": "ApplianceResourceDetails"},
- "esxi_nfc_buffer": {"key": "esxiNfcBuffer", "type": "ApplianceResourceDetails"},
- "network_bandwidth": {"key": "networkBandwidth", "type": "ApplianceResourceDetails"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {
+ "instance_type": {
+ "AutomationRunbookTaskDetails": "AutomationRunbookTaskDetails",
+ "ConsistencyCheckTaskDetails": "ConsistencyCheckTaskDetails",
+ "JobTaskDetails": "JobTaskDetails",
+ "ManualActionTaskDetails": "ManualActionTaskDetails",
+ "ScriptActionTaskDetails": "ScriptActionTaskDetails",
+ "VmNicUpdatesTaskDetails": "VmNicUpdatesTaskDetails",
+ }
}
def __init__(self, **kwargs: Any) -> None:
""" """
super().__init__(**kwargs)
- self.cpu_details = None
- self.ram_details = None
- self.datastore_snapshot = None
- self.disks_replication_details = None
- self.esxi_nfc_buffer = None
- self.network_bandwidth = None
+ self.instance_type: Optional[str] = None
-class ApplianceQueryParameter(_serialization.Model):
- """Query parameter to get appliance.
+class AutomationRunbookTaskDetails(TaskTypeDetails):
+ """This class represents the task details for an automation runbook.
- :ivar provider_type: The providerType to be used for fetching appliance details.
- :vartype provider_type: str
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The type of task details. Required.
+ :vartype instance_type: str
+ :ivar name: The recovery plan task name.
+ :vartype name: str
+ :ivar cloud_service_name: The cloud service of the automation runbook account.
+ :vartype cloud_service_name: str
+ :ivar subscription_id: The subscription Id of the automation runbook account.
+ :vartype subscription_id: str
+ :ivar account_name: The automation account name of the runbook.
+ :vartype account_name: str
+ :ivar runbook_id: The runbook Id.
+ :vartype runbook_id: str
+ :ivar runbook_name: The runbook name.
+ :vartype runbook_name: str
+ :ivar job_id: The job Id of the runbook execution.
+ :vartype job_id: str
+ :ivar job_output: The execution output of the runbook.
+ :vartype job_output: str
+ :ivar is_primary_side_script: A value indicating whether it is a primary side script or not.
+ :vartype is_primary_side_script: bool
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "provider_type": {"key": "providerType", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "cloud_service_name": {"key": "cloudServiceName", "type": "str"},
+ "subscription_id": {"key": "subscriptionId", "type": "str"},
+ "account_name": {"key": "accountName", "type": "str"},
+ "runbook_id": {"key": "runbookId", "type": "str"},
+ "runbook_name": {"key": "runbookName", "type": "str"},
+ "job_id": {"key": "jobId", "type": "str"},
+ "job_output": {"key": "jobOutput", "type": "str"},
+ "is_primary_side_script": {"key": "isPrimarySideScript", "type": "bool"},
}
- def __init__(self, *, provider_type: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ name: Optional[str] = None,
+ cloud_service_name: Optional[str] = None,
+ subscription_id: Optional[str] = None,
+ account_name: Optional[str] = None,
+ runbook_id: Optional[str] = None,
+ runbook_name: Optional[str] = None,
+ job_id: Optional[str] = None,
+ job_output: Optional[str] = None,
+ is_primary_side_script: Optional[bool] = None,
+ **kwargs: Any
+ ) -> None:
"""
- :keyword provider_type: The providerType to be used for fetching appliance details.
- :paramtype provider_type: str
+ :keyword name: The recovery plan task name.
+ :paramtype name: str
+ :keyword cloud_service_name: The cloud service of the automation runbook account.
+ :paramtype cloud_service_name: str
+ :keyword subscription_id: The subscription Id of the automation runbook account.
+ :paramtype subscription_id: str
+ :keyword account_name: The automation account name of the runbook.
+ :paramtype account_name: str
+ :keyword runbook_id: The runbook Id.
+ :paramtype runbook_id: str
+ :keyword runbook_name: The runbook name.
+ :paramtype runbook_name: str
+ :keyword job_id: The job Id of the runbook execution.
+ :paramtype job_id: str
+ :keyword job_output: The execution output of the runbook.
+ :paramtype job_output: str
+ :keyword is_primary_side_script: A value indicating whether it is a primary side script or not.
+ :paramtype is_primary_side_script: bool
"""
super().__init__(**kwargs)
- self.provider_type = provider_type
+ self.instance_type: str = "AutomationRunbookTaskDetails"
+ self.name = name
+ self.cloud_service_name = cloud_service_name
+ self.subscription_id = subscription_id
+ self.account_name = account_name
+ self.runbook_id = runbook_id
+ self.runbook_name = runbook_name
+ self.job_id = job_id
+ self.job_output = job_output
+ self.is_primary_side_script = is_primary_side_script
-class ApplianceResourceDetails(_serialization.Model):
- """Details of the appliance resource.
+class FabricSpecificCreationInput(_serialization.Model):
+ """Fabric provider specific settings.
- Variables are only populated by the server, and will be ignored when sending a request.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ AzureFabricCreationInput, InMageRcmFabricCreationInput, VMwareV2FabricCreationInput
- :ivar capacity: A value indicating the total capacity of appliance resource.
- :vartype capacity: int
- :ivar process_utilization: A value indicating the utilization percentage by gateway agent on
- appliance.
- :vartype process_utilization: float
- :ivar total_utilization: A value indicating the total utilization percentage for all processes
- on the appliance.
- :vartype total_utilization: float
- :ivar status: A value indicating the status of appliance resource.
- :vartype status: str
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the class type. Required.
+ :vartype instance_type: str
"""
_validation = {
- "capacity": {"readonly": True},
- "process_utilization": {"readonly": True},
- "total_utilization": {"readonly": True},
- "status": {"readonly": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "capacity": {"key": "capacity", "type": "int"},
- "process_utilization": {"key": "processUtilization", "type": "float"},
- "total_utilization": {"key": "totalUtilization", "type": "float"},
- "status": {"key": "status", "type": "str"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {
+ "instance_type": {
+ "Azure": "AzureFabricCreationInput",
+ "InMageRcm": "InMageRcmFabricCreationInput",
+ "VMwareV2": "VMwareV2FabricCreationInput",
+ }
}
def __init__(self, **kwargs: Any) -> None:
""" """
super().__init__(**kwargs)
- self.capacity = None
- self.process_utilization = None
- self.total_utilization = None
- self.status = None
-
+ self.instance_type: Optional[str] = None
-class ApplianceSpecificDetails(_serialization.Model):
- """Appliance specific details.
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- InMageRcmApplianceSpecificDetails
+class AzureFabricCreationInput(FabricSpecificCreationInput):
+ """Fabric provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
+ :ivar instance_type: Gets the class type. Required.
:vartype instance_type: str
+ :ivar location: The Location.
+ :vartype location: str
"""
_validation = {
@@ -4568,103 +5978,135 @@ class ApplianceSpecificDetails(_serialization.Model):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
+ "location": {"key": "location", "type": "str"},
}
- _subtype_map = {"instance_type": {"InMageRcm": "InMageRcmApplianceSpecificDetails"}}
-
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword location: The Location.
+ :paramtype location: str
+ """
super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
+ self.instance_type: str = "Azure"
+ self.location = location
-class ApplyRecoveryPointInput(_serialization.Model):
- """Input to apply recovery point.
+class FabricSpecificDetails(_serialization.Model):
+ """Fabric specific details.
- All required parameters must be populated in order to send to Azure.
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ AzureFabricSpecificDetails, HyperVSiteDetails, InMageRcmFabricSpecificDetails, VmmDetails,
+ VMwareDetails, VMwareV2FabricSpecificDetails
- :ivar properties: The input properties to apply recovery point. Required.
- :vartype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInputProperties
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
+ :vartype instance_type: str
"""
_validation = {
- "properties": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "properties": {"key": "properties", "type": "ApplyRecoveryPointInputProperties"},
+ "instance_type": {"key": "instanceType", "type": "str"},
}
- def __init__(self, *, properties: "_models.ApplyRecoveryPointInputProperties", **kwargs: Any) -> None:
- """
- :keyword properties: The input properties to apply recovery point. Required.
- :paramtype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInputProperties
- """
+ _subtype_map = {
+ "instance_type": {
+ "Azure": "AzureFabricSpecificDetails",
+ "HyperVSite": "HyperVSiteDetails",
+ "InMageRcm": "InMageRcmFabricSpecificDetails",
+ "VMM": "VmmDetails",
+ "VMware": "VMwareDetails",
+ "VMwareV2": "VMwareV2FabricSpecificDetails",
+ }
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
- self.properties = properties
+ self.instance_type: Optional[str] = None
-class ApplyRecoveryPointInputProperties(_serialization.Model):
- """Input properties to apply recovery point.
+class AzureFabricSpecificDetails(FabricSpecificDetails):
+ """Azure Fabric Specific Details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar recovery_point_id: The recovery point Id.
- :vartype recovery_point_id: str
- :ivar provider_specific_details: Provider specific input for applying recovery point. Required.
- :vartype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointProviderSpecificInput
+ :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
+ :vartype instance_type: str
+ :ivar location: The Location for the Azure fabric.
+ :vartype location: str
+ :ivar container_ids: The container Ids for the Azure fabric.
+ :vartype container_ids: list[str]
+ :ivar zones: The zones.
+ :vartype zones: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AZoneDetails]
+ :ivar extended_locations: The ExtendedLocations.
+ :vartype extended_locations:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AExtendedLocationDetails]
+ :ivar location_details: The location details.
+ :vartype location_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AFabricSpecificLocationDetails]
"""
_validation = {
- "provider_specific_details": {"required": True},
+ "instance_type": {"required": True},
}
_attribute_map = {
- "recovery_point_id": {"key": "recoveryPointId", "type": "str"},
- "provider_specific_details": {
- "key": "providerSpecificDetails",
- "type": "ApplyRecoveryPointProviderSpecificInput",
- },
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "location": {"key": "location", "type": "str"},
+ "container_ids": {"key": "containerIds", "type": "[str]"},
+ "zones": {"key": "zones", "type": "[A2AZoneDetails]"},
+ "extended_locations": {"key": "extendedLocations", "type": "[A2AExtendedLocationDetails]"},
+ "location_details": {"key": "locationDetails", "type": "[A2AFabricSpecificLocationDetails]"},
}
def __init__(
self,
*,
- provider_specific_details: "_models.ApplyRecoveryPointProviderSpecificInput",
- recovery_point_id: Optional[str] = None,
+ location: Optional[str] = None,
+ container_ids: Optional[List[str]] = None,
+ zones: Optional[List["_models.A2AZoneDetails"]] = None,
+ extended_locations: Optional[List["_models.A2AExtendedLocationDetails"]] = None,
+ location_details: Optional[List["_models.A2AFabricSpecificLocationDetails"]] = None,
**kwargs: Any
) -> None:
"""
- :keyword recovery_point_id: The recovery point Id.
- :paramtype recovery_point_id: str
- :keyword provider_specific_details: Provider specific input for applying recovery point.
- Required.
- :paramtype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointProviderSpecificInput
+ :keyword location: The Location for the Azure fabric.
+ :paramtype location: str
+ :keyword container_ids: The container Ids for the Azure fabric.
+ :paramtype container_ids: list[str]
+ :keyword zones: The zones.
+ :paramtype zones: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AZoneDetails]
+ :keyword extended_locations: The ExtendedLocations.
+ :paramtype extended_locations:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AExtendedLocationDetails]
+ :keyword location_details: The location details.
+ :paramtype location_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.A2AFabricSpecificLocationDetails]
"""
super().__init__(**kwargs)
- self.recovery_point_id = recovery_point_id
- self.provider_specific_details = provider_specific_details
+ self.instance_type: str = "Azure"
+ self.location = location
+ self.container_ids = container_ids
+ self.zones = zones
+ self.extended_locations = extended_locations
+ self.location_details = location_details
-class JobDetails(_serialization.Model):
- """Job details based on specific job type.
+class FabricSpecificCreateNetworkMappingInput(_serialization.Model):
+ """Input details specific to fabrics during Network Mapping.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AsrJobDetails, ExportJobDetails, FailoverJobDetails, SwitchProtectionJobDetails,
- TestFailoverJobDetails
+ AzureToAzureCreateNetworkMappingInput, VmmToAzureCreateNetworkMappingInput,
+ VmmToVmmCreateNetworkMappingInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
- values). Required.
+ :ivar instance_type: The instance type. Required.
:vartype instance_type: str
- :ivar affected_object_details: The affected object properties like source server, source cloud,
- target server, target cloud etc. based on the workflow object details.
- :vartype affected_object_details: dict[str, str]
"""
_validation = {
@@ -4673,182 +6115,140 @@ class JobDetails(_serialization.Model):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
}
_subtype_map = {
"instance_type": {
- "AsrJobDetails": "AsrJobDetails",
- "ExportJobDetails": "ExportJobDetails",
- "FailoverJobDetails": "FailoverJobDetails",
- "SwitchProtectionJobDetails": "SwitchProtectionJobDetails",
- "TestFailoverJobDetails": "TestFailoverJobDetails",
+ "AzureToAzure": "AzureToAzureCreateNetworkMappingInput",
+ "VmmToAzure": "VmmToAzureCreateNetworkMappingInput",
+ "VmmToVmm": "VmmToVmmCreateNetworkMappingInput",
}
}
- def __init__(self, *, affected_object_details: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
- """
- :keyword affected_object_details: The affected object properties like source server, source
- cloud, target server, target cloud etc. based on the workflow object details.
- :paramtype affected_object_details: dict[str, str]
- """
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
super().__init__(**kwargs)
self.instance_type: Optional[str] = None
- self.affected_object_details = affected_object_details
-class AsrJobDetails(JobDetails):
- """This class represents job details based on specific job type.
+class AzureToAzureCreateNetworkMappingInput(FabricSpecificCreateNetworkMappingInput):
+ """Create network mappings input properties/behavior specific to Azure to Azure Network mapping.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
- values). Required.
+ :ivar instance_type: The instance type. Required.
:vartype instance_type: str
- :ivar affected_object_details: The affected object properties like source server, source cloud,
- target server, target cloud etc. based on the workflow object details.
- :vartype affected_object_details: dict[str, str]
+ :ivar primary_network_id: The primary azure vnet Id. Required.
+ :vartype primary_network_id: str
"""
_validation = {
"instance_type": {"required": True},
+ "primary_network_id": {"required": True},
}
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
+ "primary_network_id": {"key": "primaryNetworkId", "type": "str"},
}
- def __init__(self, *, affected_object_details: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
+ def __init__(self, *, primary_network_id: str, **kwargs: Any) -> None:
"""
- :keyword affected_object_details: The affected object properties like source server, source
- cloud, target server, target cloud etc. based on the workflow object details.
- :paramtype affected_object_details: dict[str, str]
+ :keyword primary_network_id: The primary azure vnet Id. Required.
+ :paramtype primary_network_id: str
"""
- super().__init__(affected_object_details=affected_object_details, **kwargs)
- self.instance_type: str = "AsrJobDetails"
+ super().__init__(**kwargs)
+ self.instance_type: str = "AzureToAzure"
+ self.primary_network_id = primary_network_id
-class ASRTask(_serialization.Model): # pylint: disable=too-many-instance-attributes
- """Task of the Job.
+class NetworkMappingFabricSpecificSettings(_serialization.Model):
+ """Network Mapping fabric specific settings.
- :ivar task_id: The Id.
- :vartype task_id: str
- :ivar name: The unique Task name.
- :vartype name: str
- :ivar start_time: The start time.
- :vartype start_time: ~datetime.datetime
- :ivar end_time: The end time.
- :vartype end_time: ~datetime.datetime
- :ivar allowed_actions: The state/actions applicable on this task.
- :vartype allowed_actions: list[str]
- :ivar friendly_name: The name.
- :vartype friendly_name: str
- :ivar state: The State. It is one of these values - NotStarted, InProgress, Succeeded, Failed,
- Cancelled, Suspended or Other.
- :vartype state: str
- :ivar state_description: The description of the task state. For example - For Succeeded state,
- description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.
- :vartype state_description: str
- :ivar task_type: The type of task. Details in CustomDetails property depend on this type.
- :vartype task_type: str
- :ivar custom_details: The custom task details based on the task type.
- :vartype custom_details: ~azure.mgmt.recoveryservicessiterecovery.models.TaskTypeDetails
- :ivar group_task_custom_details: The custom task details based on the task type, if the task
- type is GroupTaskDetails or one of the types derived from it.
- :vartype group_task_custom_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.GroupTaskDetails
- :ivar errors: The task error details.
- :vartype errors: list[~azure.mgmt.recoveryservicessiterecovery.models.JobErrorDetails]
+ You probably want to use the sub-classes and not this class directly. Known sub-classes are:
+ AzureToAzureNetworkMappingSettings, VmmToAzureNetworkMappingSettings,
+ VmmToVmmNetworkMappingSettings
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the Instance type. Required.
+ :vartype instance_type: str
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ _subtype_map = {
+ "instance_type": {
+ "AzureToAzure": "AzureToAzureNetworkMappingSettings",
+ "VmmToAzure": "VmmToAzureNetworkMappingSettings",
+ "VmmToVmm": "VmmToVmmNetworkMappingSettings",
+ }
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: Optional[str] = None
+
+
+class AzureToAzureNetworkMappingSettings(NetworkMappingFabricSpecificSettings):
+ """A2A Network Mapping fabric specific settings.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: Gets the Instance type. Required.
+ :vartype instance_type: str
+ :ivar primary_fabric_location: The primary fabric location.
+ :vartype primary_fabric_location: str
+ :ivar recovery_fabric_location: The recovery fabric location.
+ :vartype recovery_fabric_location: str
"""
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
_attribute_map = {
- "task_id": {"key": "taskId", "type": "str"},
- "name": {"key": "name", "type": "str"},
- "start_time": {"key": "startTime", "type": "iso-8601"},
- "end_time": {"key": "endTime", "type": "iso-8601"},
- "allowed_actions": {"key": "allowedActions", "type": "[str]"},
- "friendly_name": {"key": "friendlyName", "type": "str"},
- "state": {"key": "state", "type": "str"},
- "state_description": {"key": "stateDescription", "type": "str"},
- "task_type": {"key": "taskType", "type": "str"},
- "custom_details": {"key": "customDetails", "type": "TaskTypeDetails"},
- "group_task_custom_details": {"key": "groupTaskCustomDetails", "type": "GroupTaskDetails"},
- "errors": {"key": "errors", "type": "[JobErrorDetails]"},
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "primary_fabric_location": {"key": "primaryFabricLocation", "type": "str"},
+ "recovery_fabric_location": {"key": "recoveryFabricLocation", "type": "str"},
}
def __init__(
self,
*,
- task_id: Optional[str] = None,
- name: Optional[str] = None,
- start_time: Optional[datetime.datetime] = None,
- end_time: Optional[datetime.datetime] = None,
- allowed_actions: Optional[List[str]] = None,
- friendly_name: Optional[str] = None,
- state: Optional[str] = None,
- state_description: Optional[str] = None,
- task_type: Optional[str] = None,
- custom_details: Optional["_models.TaskTypeDetails"] = None,
- group_task_custom_details: Optional["_models.GroupTaskDetails"] = None,
- errors: Optional[List["_models.JobErrorDetails"]] = None,
+ primary_fabric_location: Optional[str] = None,
+ recovery_fabric_location: Optional[str] = None,
**kwargs: Any
) -> None:
"""
- :keyword task_id: The Id.
- :paramtype task_id: str
- :keyword name: The unique Task name.
- :paramtype name: str
- :keyword start_time: The start time.
- :paramtype start_time: ~datetime.datetime
- :keyword end_time: The end time.
- :paramtype end_time: ~datetime.datetime
- :keyword allowed_actions: The state/actions applicable on this task.
- :paramtype allowed_actions: list[str]
- :keyword friendly_name: The name.
- :paramtype friendly_name: str
- :keyword state: The State. It is one of these values - NotStarted, InProgress, Succeeded,
- Failed, Cancelled, Suspended or Other.
- :paramtype state: str
- :keyword state_description: The description of the task state. For example - For Succeeded
- state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.
- :paramtype state_description: str
- :keyword task_type: The type of task. Details in CustomDetails property depend on this type.
- :paramtype task_type: str
- :keyword custom_details: The custom task details based on the task type.
- :paramtype custom_details: ~azure.mgmt.recoveryservicessiterecovery.models.TaskTypeDetails
- :keyword group_task_custom_details: The custom task details based on the task type, if the task
- type is GroupTaskDetails or one of the types derived from it.
- :paramtype group_task_custom_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.GroupTaskDetails
- :keyword errors: The task error details.
- :paramtype errors: list[~azure.mgmt.recoveryservicessiterecovery.models.JobErrorDetails]
+ :keyword primary_fabric_location: The primary fabric location.
+ :paramtype primary_fabric_location: str
+ :keyword recovery_fabric_location: The recovery fabric location.
+ :paramtype recovery_fabric_location: str
"""
super().__init__(**kwargs)
- self.task_id = task_id
- self.name = name
- self.start_time = start_time
- self.end_time = end_time
- self.allowed_actions = allowed_actions
- self.friendly_name = friendly_name
- self.state = state
- self.state_description = state_description
- self.task_type = task_type
- self.custom_details = custom_details
- self.group_task_custom_details = group_task_custom_details
- self.errors = errors
+ self.instance_type: str = "AzureToAzure"
+ self.primary_fabric_location = primary_fabric_location
+ self.recovery_fabric_location = recovery_fabric_location
-class TaskTypeDetails(_serialization.Model):
- """Task details based on specific task type.
+class FabricSpecificUpdateNetworkMappingInput(_serialization.Model):
+ """Input details specific to fabrics during Network Mapping.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AutomationRunbookTaskDetails, ConsistencyCheckTaskDetails, JobTaskDetails,
- ManualActionTaskDetails, ScriptActionTaskDetails, VmNicUpdatesTaskDetails
+ AzureToAzureUpdateNetworkMappingInput, VmmToAzureUpdateNetworkMappingInput,
+ VmmToVmmUpdateNetworkMappingInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The type of task details. Required.
+ :ivar instance_type: The instance type. Required.
:vartype instance_type: str
"""
@@ -4862,12 +6262,9 @@ class TaskTypeDetails(_serialization.Model):
_subtype_map = {
"instance_type": {
- "AutomationRunbookTaskDetails": "AutomationRunbookTaskDetails",
- "ConsistencyCheckTaskDetails": "ConsistencyCheckTaskDetails",
- "JobTaskDetails": "JobTaskDetails",
- "ManualActionTaskDetails": "ManualActionTaskDetails",
- "ScriptActionTaskDetails": "ScriptActionTaskDetails",
- "VmNicUpdatesTaskDetails": "VmNicUpdatesTaskDetails",
+ "AzureToAzure": "AzureToAzureUpdateNetworkMappingInput",
+ "VmmToAzure": "VmmToAzureUpdateNetworkMappingInput",
+ "VmmToVmm": "VmmToVmmUpdateNetworkMappingInput",
}
}
@@ -4877,31 +6274,15 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class AutomationRunbookTaskDetails(TaskTypeDetails):
- """This class represents the task details for an automation runbook.
+class AzureToAzureUpdateNetworkMappingInput(FabricSpecificUpdateNetworkMappingInput):
+ """Updates network mappings input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The type of task details. Required.
+ :ivar instance_type: The instance type. Required.
:vartype instance_type: str
- :ivar name: The recovery plan task name.
- :vartype name: str
- :ivar cloud_service_name: The cloud service of the automation runbook account.
- :vartype cloud_service_name: str
- :ivar subscription_id: The subscription Id of the automation runbook account.
- :vartype subscription_id: str
- :ivar account_name: The automation account name of the runbook.
- :vartype account_name: str
- :ivar runbook_id: The runbook Id.
- :vartype runbook_id: str
- :ivar runbook_name: The runbook name.
- :vartype runbook_name: str
- :ivar job_id: The job Id of the runbook execution.
- :vartype job_id: str
- :ivar job_output: The execution output of the runbook.
- :vartype job_output: str
- :ivar is_primary_side_script: A value indicating whether it is a primary side script or not.
- :vartype is_primary_side_script: bool
+ :ivar primary_network_id: The primary azure vnet Id.
+ :vartype primary_network_id: str
"""
_validation = {
@@ -4910,74 +6291,153 @@ class AutomationRunbookTaskDetails(TaskTypeDetails):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "name": {"key": "name", "type": "str"},
- "cloud_service_name": {"key": "cloudServiceName", "type": "str"},
- "subscription_id": {"key": "subscriptionId", "type": "str"},
- "account_name": {"key": "accountName", "type": "str"},
- "runbook_id": {"key": "runbookId", "type": "str"},
- "runbook_name": {"key": "runbookName", "type": "str"},
- "job_id": {"key": "jobId", "type": "str"},
- "job_output": {"key": "jobOutput", "type": "str"},
- "is_primary_side_script": {"key": "isPrimarySideScript", "type": "bool"},
+ "primary_network_id": {"key": "primaryNetworkId", "type": "str"},
+ }
+
+ def __init__(self, *, primary_network_id: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword primary_network_id: The primary azure vnet Id.
+ :paramtype primary_network_id: str
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "AzureToAzure"
+ self.primary_network_id = primary_network_id
+
+
+class AzureToAzureVmSyncedConfigDetails(_serialization.Model):
+ """Azure to Azure VM synced configuration details.
+
+ :ivar tags: The Azure VM tags.
+ :vartype tags: dict[str, str]
+ :ivar input_endpoints: The Azure VM input endpoints.
+ :vartype input_endpoints: list[~azure.mgmt.recoveryservicessiterecovery.models.InputEndpoint]
+ """
+
+ _attribute_map = {
+ "tags": {"key": "tags", "type": "{str}"},
+ "input_endpoints": {"key": "inputEndpoints", "type": "[InputEndpoint]"},
}
def __init__(
self,
*,
- name: Optional[str] = None,
- cloud_service_name: Optional[str] = None,
- subscription_id: Optional[str] = None,
- account_name: Optional[str] = None,
- runbook_id: Optional[str] = None,
- runbook_name: Optional[str] = None,
- job_id: Optional[str] = None,
- job_output: Optional[str] = None,
- is_primary_side_script: Optional[bool] = None,
+ tags: Optional[Dict[str, str]] = None,
+ input_endpoints: Optional[List["_models.InputEndpoint"]] = None,
**kwargs: Any
) -> None:
"""
- :keyword name: The recovery plan task name.
- :paramtype name: str
- :keyword cloud_service_name: The cloud service of the automation runbook account.
- :paramtype cloud_service_name: str
- :keyword subscription_id: The subscription Id of the automation runbook account.
- :paramtype subscription_id: str
- :keyword account_name: The automation account name of the runbook.
- :paramtype account_name: str
- :keyword runbook_id: The runbook Id.
- :paramtype runbook_id: str
- :keyword runbook_name: The runbook name.
- :paramtype runbook_name: str
- :keyword job_id: The job Id of the runbook execution.
- :paramtype job_id: str
- :keyword job_output: The execution output of the runbook.
- :paramtype job_output: str
- :keyword is_primary_side_script: A value indicating whether it is a primary side script or not.
- :paramtype is_primary_side_script: bool
+ :keyword tags: The Azure VM tags.
+ :paramtype tags: dict[str, str]
+ :keyword input_endpoints: The Azure VM input endpoints.
+ :paramtype input_endpoints: list[~azure.mgmt.recoveryservicessiterecovery.models.InputEndpoint]
+ """
+ super().__init__(**kwargs)
+ self.tags = tags
+ self.input_endpoints = input_endpoints
+
+
+class AzureVmDiskDetails(_serialization.Model):
+ """Disk details for E2A provider.
+
+ :ivar vhd_type: VHD type.
+ :vartype vhd_type: str
+ :ivar vhd_id: The VHD id.
+ :vartype vhd_id: str
+ :ivar disk_id: The disk resource id.
+ :vartype disk_id: str
+ :ivar vhd_name: VHD name.
+ :vartype vhd_name: str
+ :ivar max_size_mb: Max side in MB.
+ :vartype max_size_mb: str
+ :ivar target_disk_location: Blob uri of the Azure disk.
+ :vartype target_disk_location: str
+ :ivar target_disk_name: The target Azure disk name.
+ :vartype target_disk_name: str
+ :ivar lun_id: Ordinal\\LunId of the disk for the Azure VM.
+ :vartype lun_id: str
+ :ivar disk_encryption_set_id: The DiskEncryptionSet ARM ID.
+ :vartype disk_encryption_set_id: str
+ :ivar custom_target_disk_name: The custom target Azure disk name.
+ :vartype custom_target_disk_name: str
+ """
+
+ _attribute_map = {
+ "vhd_type": {"key": "vhdType", "type": "str"},
+ "vhd_id": {"key": "vhdId", "type": "str"},
+ "disk_id": {"key": "diskId", "type": "str"},
+ "vhd_name": {"key": "vhdName", "type": "str"},
+ "max_size_mb": {"key": "maxSizeMB", "type": "str"},
+ "target_disk_location": {"key": "targetDiskLocation", "type": "str"},
+ "target_disk_name": {"key": "targetDiskName", "type": "str"},
+ "lun_id": {"key": "lunId", "type": "str"},
+ "disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "custom_target_disk_name": {"key": "customTargetDiskName", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ vhd_type: Optional[str] = None,
+ vhd_id: Optional[str] = None,
+ disk_id: Optional[str] = None,
+ vhd_name: Optional[str] = None,
+ max_size_mb: Optional[str] = None,
+ target_disk_location: Optional[str] = None,
+ target_disk_name: Optional[str] = None,
+ lun_id: Optional[str] = None,
+ disk_encryption_set_id: Optional[str] = None,
+ custom_target_disk_name: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword vhd_type: VHD type.
+ :paramtype vhd_type: str
+ :keyword vhd_id: The VHD id.
+ :paramtype vhd_id: str
+ :keyword disk_id: The disk resource id.
+ :paramtype disk_id: str
+ :keyword vhd_name: VHD name.
+ :paramtype vhd_name: str
+ :keyword max_size_mb: Max side in MB.
+ :paramtype max_size_mb: str
+ :keyword target_disk_location: Blob uri of the Azure disk.
+ :paramtype target_disk_location: str
+ :keyword target_disk_name: The target Azure disk name.
+ :paramtype target_disk_name: str
+ :keyword lun_id: Ordinal\\LunId of the disk for the Azure VM.
+ :paramtype lun_id: str
+ :keyword disk_encryption_set_id: The DiskEncryptionSet ARM ID.
+ :paramtype disk_encryption_set_id: str
+ :keyword custom_target_disk_name: The custom target Azure disk name.
+ :paramtype custom_target_disk_name: str
"""
super().__init__(**kwargs)
- self.instance_type: str = "AutomationRunbookTaskDetails"
- self.name = name
- self.cloud_service_name = cloud_service_name
- self.subscription_id = subscription_id
- self.account_name = account_name
- self.runbook_id = runbook_id
- self.runbook_name = runbook_name
- self.job_id = job_id
- self.job_output = job_output
- self.is_primary_side_script = is_primary_side_script
-
+ self.vhd_type = vhd_type
+ self.vhd_id = vhd_id
+ self.disk_id = disk_id
+ self.vhd_name = vhd_name
+ self.max_size_mb = max_size_mb
+ self.target_disk_location = target_disk_location
+ self.target_disk_name = target_disk_name
+ self.lun_id = lun_id
+ self.disk_encryption_set_id = disk_encryption_set_id
+ self.custom_target_disk_name = custom_target_disk_name
-class FabricSpecificCreationInput(_serialization.Model):
- """Fabric provider specific settings.
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AzureFabricCreationInput, InMageRcmFabricCreationInput, VMwareV2FabricCreationInput
+class ClusterFailoverJobDetails(JobDetails):
+ """This class represents the details for a failover job of cluster.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the class type. Required.
+ :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
+ values). Required.
:vartype instance_type: str
+ :ivar affected_object_details: The affected object properties like source server, source cloud,
+ target server, target cloud etc. based on the workflow object details.
+ :vartype affected_object_details: dict[str, str]
+ :ivar protected_item_details: The test VM details.
+ :vartype protected_item_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.FailoverReplicationProtectedItemDetails]
"""
_validation = {
@@ -4986,168 +6446,171 @@ class FabricSpecificCreationInput(_serialization.Model):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
+ "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
+ "protected_item_details": {"key": "protectedItemDetails", "type": "[FailoverReplicationProtectedItemDetails]"},
}
- _subtype_map = {
- "instance_type": {
- "Azure": "AzureFabricCreationInput",
- "InMageRcm": "InMageRcmFabricCreationInput",
- "VMwareV2": "VMwareV2FabricCreationInput",
- }
- }
-
- def __init__(self, **kwargs: Any) -> None:
- """ """
- super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
-
+ def __init__(
+ self,
+ *,
+ affected_object_details: Optional[Dict[str, str]] = None,
+ protected_item_details: Optional[List["_models.FailoverReplicationProtectedItemDetails"]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword affected_object_details: The affected object properties like source server, source
+ cloud, target server, target cloud etc. based on the workflow object details.
+ :paramtype affected_object_details: dict[str, str]
+ :keyword protected_item_details: The test VM details.
+ :paramtype protected_item_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.FailoverReplicationProtectedItemDetails]
+ """
+ super().__init__(affected_object_details=affected_object_details, **kwargs)
+ self.instance_type: str = "ClusterFailoverJobDetails"
+ self.protected_item_details = protected_item_details
-class AzureFabricCreationInput(FabricSpecificCreationInput):
- """Fabric provider specific settings.
- All required parameters must be populated in order to send to Azure.
+class ClusterRecoveryPoint(_serialization.Model):
+ """Recovery point.
- :ivar instance_type: Gets the class type. Required.
- :vartype instance_type: str
- :ivar location: The Location.
- :vartype location: str
+ :ivar id: The recovery point Id.
+ :vartype id: str
+ :ivar name: The name of the recovery point.
+ :vartype name: str
+ :ivar type: The resource type.
+ :vartype type: str
+ :ivar properties: The recovery point properties.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPointProperties
"""
- _validation = {
- "instance_type": {"required": True},
- }
-
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- "location": {"key": "location", "type": "str"},
+ "id": {"key": "id", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "type": {"key": "type", "type": "str"},
+ "properties": {"key": "properties", "type": "ClusterRecoveryPointProperties"},
}
- def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ id: Optional[str] = None, # pylint: disable=redefined-builtin
+ name: Optional[str] = None,
+ type: Optional[str] = None,
+ properties: Optional["_models.ClusterRecoveryPointProperties"] = None,
+ **kwargs: Any
+ ) -> None:
"""
- :keyword location: The Location.
- :paramtype location: str
+ :keyword id: The recovery point Id.
+ :paramtype id: str
+ :keyword name: The name of the recovery point.
+ :paramtype name: str
+ :keyword type: The resource type.
+ :paramtype type: str
+ :keyword properties: The recovery point properties.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPointProperties
"""
super().__init__(**kwargs)
- self.instance_type: str = "Azure"
- self.location = location
-
-
-class FabricSpecificDetails(_serialization.Model):
- """Fabric specific details.
+ self.id = id
+ self.name = name
+ self.type = type
+ self.properties = properties
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AzureFabricSpecificDetails, HyperVSiteDetails, InMageRcmFabricSpecificDetails, VmmDetails,
- VMwareDetails, VMwareV2FabricSpecificDetails
- All required parameters must be populated in order to send to Azure.
+class ClusterRecoveryPointCollection(_serialization.Model):
+ """Collection of cluster recovery point details.
- :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
- :vartype instance_type: str
+ :ivar value: The cluster recovery point details.
+ :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint]
+ :ivar next_link: The value of next link.
+ :vartype next_link: str
"""
- _validation = {
- "instance_type": {"required": True},
- }
-
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- }
-
- _subtype_map = {
- "instance_type": {
- "Azure": "AzureFabricSpecificDetails",
- "HyperVSite": "HyperVSiteDetails",
- "InMageRcm": "InMageRcmFabricSpecificDetails",
- "VMM": "VmmDetails",
- "VMware": "VMwareDetails",
- "VMwareV2": "VMwareV2FabricSpecificDetails",
- }
+ "value": {"key": "value", "type": "[ClusterRecoveryPoint]"},
+ "next_link": {"key": "nextLink", "type": "str"},
}
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__(
+ self,
+ *,
+ value: Optional[List["_models.ClusterRecoveryPoint"]] = None,
+ next_link: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword value: The cluster recovery point details.
+ :paramtype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint]
+ :keyword next_link: The value of next link.
+ :paramtype next_link: str
+ """
super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
-
+ self.value = value
+ self.next_link = next_link
-class AzureFabricSpecificDetails(FabricSpecificDetails):
- """Azure Fabric Specific Details.
- All required parameters must be populated in order to send to Azure.
+class ClusterRecoveryPointProperties(_serialization.Model):
+ """Cluster recovery point properties.
- :ivar instance_type: Gets the class type. Overridden in derived classes. Required.
- :vartype instance_type: str
- :ivar location: The Location for the Azure fabric.
- :vartype location: str
- :ivar container_ids: The container Ids for the Azure fabric.
- :vartype container_ids: list[str]
- :ivar zones: The zones.
- :vartype zones: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AZoneDetails]
- :ivar extended_locations: The ExtendedLocations.
- :vartype extended_locations:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AExtendedLocationDetails]
- :ivar location_details: The location details.
- :vartype location_details:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AFabricSpecificLocationDetails]
+ :ivar recovery_point_time: The recovery point time.
+ :vartype recovery_point_time: ~datetime.datetime
+ :ivar recovery_point_type: The recovery point type. Known values are: "NotSpecified",
+ "ApplicationConsistent", and "CrashConsistent".
+ :vartype recovery_point_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPointType
+ :ivar provider_specific_details: The provider specific details for the recovery point.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterProviderSpecificRecoveryPointDetails
"""
- _validation = {
- "instance_type": {"required": True},
- }
-
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- "location": {"key": "location", "type": "str"},
- "container_ids": {"key": "containerIds", "type": "[str]"},
- "zones": {"key": "zones", "type": "[A2AZoneDetails]"},
- "extended_locations": {"key": "extendedLocations", "type": "[A2AExtendedLocationDetails]"},
- "location_details": {"key": "locationDetails", "type": "[A2AFabricSpecificLocationDetails]"},
+ "recovery_point_time": {"key": "recoveryPointTime", "type": "iso-8601"},
+ "recovery_point_type": {"key": "recoveryPointType", "type": "str"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ClusterProviderSpecificRecoveryPointDetails",
+ },
}
def __init__(
self,
*,
- location: Optional[str] = None,
- container_ids: Optional[List[str]] = None,
- zones: Optional[List["_models.A2AZoneDetails"]] = None,
- extended_locations: Optional[List["_models.A2AExtendedLocationDetails"]] = None,
- location_details: Optional[List["_models.A2AFabricSpecificLocationDetails"]] = None,
+ recovery_point_time: Optional[datetime.datetime] = None,
+ recovery_point_type: Optional[Union[str, "_models.ClusterRecoveryPointType"]] = None,
+ provider_specific_details: Optional["_models.ClusterProviderSpecificRecoveryPointDetails"] = None,
**kwargs: Any
) -> None:
"""
- :keyword location: The Location for the Azure fabric.
- :paramtype location: str
- :keyword container_ids: The container Ids for the Azure fabric.
- :paramtype container_ids: list[str]
- :keyword zones: The zones.
- :paramtype zones: list[~azure.mgmt.recoveryservicessiterecovery.models.A2AZoneDetails]
- :keyword extended_locations: The ExtendedLocations.
- :paramtype extended_locations:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AExtendedLocationDetails]
- :keyword location_details: The location details.
- :paramtype location_details:
- list[~azure.mgmt.recoveryservicessiterecovery.models.A2AFabricSpecificLocationDetails]
+ :keyword recovery_point_time: The recovery point time.
+ :paramtype recovery_point_time: ~datetime.datetime
+ :keyword recovery_point_type: The recovery point type. Known values are: "NotSpecified",
+ "ApplicationConsistent", and "CrashConsistent".
+ :paramtype recovery_point_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPointType
+ :keyword provider_specific_details: The provider specific details for the recovery point.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterProviderSpecificRecoveryPointDetails
"""
super().__init__(**kwargs)
- self.instance_type: str = "Azure"
- self.location = location
- self.container_ids = container_ids
- self.zones = zones
- self.extended_locations = extended_locations
- self.location_details = location_details
-
+ self.recovery_point_time = recovery_point_time
+ self.recovery_point_type = recovery_point_type
+ self.provider_specific_details = provider_specific_details
-class FabricSpecificCreateNetworkMappingInput(_serialization.Model):
- """Input details specific to fabrics during Network Mapping.
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AzureToAzureCreateNetworkMappingInput, VmmToAzureCreateNetworkMappingInput,
- VmmToVmmCreateNetworkMappingInput
+class ClusterSwitchProtectionJobDetails(JobDetails):
+ """This class represents details for switch cluster protection job.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The instance type. Required.
+ :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
+ values). Required.
:vartype instance_type: str
+ :ivar affected_object_details: The affected object properties like source server, source cloud,
+ target server, target cloud etc. based on the workflow object details.
+ :vartype affected_object_details: dict[str, str]
+ :ivar new_replication_protection_cluster_id: ARM Id of the new replication protection cluster.
+ :vartype new_replication_protection_cluster_id: str
"""
_validation = {
@@ -5156,174 +6619,189 @@ class FabricSpecificCreateNetworkMappingInput(_serialization.Model):
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
+ "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
+ "new_replication_protection_cluster_id": {"key": "newReplicationProtectionClusterId", "type": "str"},
}
- _subtype_map = {
- "instance_type": {
- "AzureToAzure": "AzureToAzureCreateNetworkMappingInput",
- "VmmToAzure": "VmmToAzureCreateNetworkMappingInput",
- "VmmToVmm": "VmmToVmmCreateNetworkMappingInput",
- }
- }
-
- def __init__(self, **kwargs: Any) -> None:
- """ """
- super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
+ def __init__(
+ self,
+ *,
+ affected_object_details: Optional[Dict[str, str]] = None,
+ new_replication_protection_cluster_id: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword affected_object_details: The affected object properties like source server, source
+ cloud, target server, target cloud etc. based on the workflow object details.
+ :paramtype affected_object_details: dict[str, str]
+ :keyword new_replication_protection_cluster_id: ARM Id of the new replication protection
+ cluster.
+ :paramtype new_replication_protection_cluster_id: str
+ """
+ super().__init__(affected_object_details=affected_object_details, **kwargs)
+ self.instance_type: str = "ClusterSwitchProtectionJobDetails"
+ self.new_replication_protection_cluster_id = new_replication_protection_cluster_id
-class AzureToAzureCreateNetworkMappingInput(FabricSpecificCreateNetworkMappingInput):
- """Create network mappings input properties/behavior specific to Azure to Azure Network mapping.
+class ClusterTestFailoverCleanupInput(_serialization.Model):
+ """Input definition for test failover cleanup for cluster.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The instance type. Required.
- :vartype instance_type: str
- :ivar primary_network_id: The primary azure vnet Id. Required.
- :vartype primary_network_id: str
+ :ivar properties: Test failover cleanup input properties. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInputProperties
"""
_validation = {
- "instance_type": {"required": True},
- "primary_network_id": {"required": True},
+ "properties": {"required": True},
}
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- "primary_network_id": {"key": "primaryNetworkId", "type": "str"},
+ "properties": {"key": "properties", "type": "ClusterTestFailoverCleanupInputProperties"},
}
- def __init__(self, *, primary_network_id: str, **kwargs: Any) -> None:
+ def __init__(self, *, properties: "_models.ClusterTestFailoverCleanupInputProperties", **kwargs: Any) -> None:
"""
- :keyword primary_network_id: The primary azure vnet Id. Required.
- :paramtype primary_network_id: str
+ :keyword properties: Test failover cleanup input properties. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInputProperties
"""
super().__init__(**kwargs)
- self.instance_type: str = "AzureToAzure"
- self.primary_network_id = primary_network_id
-
-
-class NetworkMappingFabricSpecificSettings(_serialization.Model):
- """Network Mapping fabric specific settings.
+ self.properties = properties
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AzureToAzureNetworkMappingSettings, VmmToAzureNetworkMappingSettings,
- VmmToVmmNetworkMappingSettings
- All required parameters must be populated in order to send to Azure.
+class ClusterTestFailoverCleanupInputProperties(_serialization.Model): # pylint: disable=name-too-long
+ """Input definition for test failover cleanup input properties.
- :ivar instance_type: Gets the Instance type. Required.
- :vartype instance_type: str
+ :ivar comments: Test failover cleanup comments.
+ :vartype comments: str
"""
_validation = {
- "instance_type": {"required": True},
+ "comments": {"max_length": 1024},
}
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- }
-
- _subtype_map = {
- "instance_type": {
- "AzureToAzure": "AzureToAzureNetworkMappingSettings",
- "VmmToAzure": "VmmToAzureNetworkMappingSettings",
- "VmmToVmm": "VmmToVmmNetworkMappingSettings",
- }
+ "comments": {"key": "comments", "type": "str"},
}
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__(self, *, comments: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword comments: Test failover cleanup comments.
+ :paramtype comments: str
+ """
super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
+ self.comments = comments
-class AzureToAzureNetworkMappingSettings(NetworkMappingFabricSpecificSettings):
- """A2A Network Mapping fabric specific settings.
+class ClusterTestFailoverInput(_serialization.Model):
+ """Input definition for test cluster failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: Gets the Instance type. Required.
- :vartype instance_type: str
- :ivar primary_fabric_location: The primary fabric location.
- :vartype primary_fabric_location: str
- :ivar recovery_fabric_location: The recovery fabric location.
- :vartype recovery_fabric_location: str
+ :ivar properties: Test failover input properties. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInputProperties
"""
_validation = {
- "instance_type": {"required": True},
+ "properties": {"required": True},
}
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- "primary_fabric_location": {"key": "primaryFabricLocation", "type": "str"},
- "recovery_fabric_location": {"key": "recoveryFabricLocation", "type": "str"},
+ "properties": {"key": "properties", "type": "ClusterTestFailoverInputProperties"},
}
- def __init__(
- self,
- *,
- primary_fabric_location: Optional[str] = None,
- recovery_fabric_location: Optional[str] = None,
- **kwargs: Any
- ) -> None:
+ def __init__(self, *, properties: "_models.ClusterTestFailoverInputProperties", **kwargs: Any) -> None:
"""
- :keyword primary_fabric_location: The primary fabric location.
- :paramtype primary_fabric_location: str
- :keyword recovery_fabric_location: The recovery fabric location.
- :paramtype recovery_fabric_location: str
+ :keyword properties: Test failover input properties. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInputProperties
"""
super().__init__(**kwargs)
- self.instance_type: str = "AzureToAzure"
- self.primary_fabric_location = primary_fabric_location
- self.recovery_fabric_location = recovery_fabric_location
-
-
-class FabricSpecificUpdateNetworkMappingInput(_serialization.Model):
- """Input details specific to fabrics during Network Mapping.
+ self.properties = properties
- You probably want to use the sub-classes and not this class directly. Known sub-classes are:
- AzureToAzureUpdateNetworkMappingInput, VmmToAzureUpdateNetworkMappingInput,
- VmmToVmmUpdateNetworkMappingInput
- All required parameters must be populated in order to send to Azure.
+class ClusterTestFailoverInputProperties(_serialization.Model):
+ """Input definition for test failover input properties.
- :ivar instance_type: The instance type. Required.
- :vartype instance_type: str
+ :ivar failover_direction: Failover direction. Known values are: "PrimaryToRecovery" and
+ "RecoveryToPrimary".
+ :vartype failover_direction: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.FailoverDirection
+ :ivar network_type: Network type to be used for test failover.
+ :vartype network_type: str
+ :ivar network_id: The id of the network to be used for test failover.
+ :vartype network_id: str
+ :ivar provider_specific_details: Provider specific settings.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverProviderSpecificInput
"""
- _validation = {
- "instance_type": {"required": True},
- }
-
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
- }
-
- _subtype_map = {
- "instance_type": {
- "AzureToAzure": "AzureToAzureUpdateNetworkMappingInput",
- "VmmToAzure": "VmmToAzureUpdateNetworkMappingInput",
- "VmmToVmm": "VmmToVmmUpdateNetworkMappingInput",
- }
+ "failover_direction": {"key": "failoverDirection", "type": "str"},
+ "network_type": {"key": "networkType", "type": "str"},
+ "network_id": {"key": "networkId", "type": "str"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ClusterTestFailoverProviderSpecificInput",
+ },
}
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__(
+ self,
+ *,
+ failover_direction: Optional[Union[str, "_models.FailoverDirection"]] = None,
+ network_type: Optional[str] = None,
+ network_id: Optional[str] = None,
+ provider_specific_details: Optional["_models.ClusterTestFailoverProviderSpecificInput"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword failover_direction: Failover direction. Known values are: "PrimaryToRecovery" and
+ "RecoveryToPrimary".
+ :paramtype failover_direction: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.FailoverDirection
+ :keyword network_type: Network type to be used for test failover.
+ :paramtype network_type: str
+ :keyword network_id: The id of the network to be used for test failover.
+ :paramtype network_id: str
+ :keyword provider_specific_details: Provider specific settings.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverProviderSpecificInput
+ """
super().__init__(**kwargs)
- self.instance_type: Optional[str] = None
+ self.failover_direction = failover_direction
+ self.network_type = network_type
+ self.network_id = network_id
+ self.provider_specific_details = provider_specific_details
-class AzureToAzureUpdateNetworkMappingInput(FabricSpecificUpdateNetworkMappingInput):
- """Updates network mappings input.
+class ClusterTestFailoverJobDetails(JobDetails):
+ """This class represents the details for a test failover job of cluster.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
- :ivar instance_type: The instance type. Required.
+ :ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
+ values). Required.
:vartype instance_type: str
- :ivar primary_network_id: The primary azure vnet Id.
- :vartype primary_network_id: str
+ :ivar affected_object_details: The affected object properties like source server, source cloud,
+ target server, target cloud etc. based on the workflow object details.
+ :vartype affected_object_details: dict[str, str]
+ :ivar test_failover_status: The test failover status.
+ :vartype test_failover_status: str
+ :ivar comments: The test failover comments.
+ :vartype comments: str
+ :ivar network_name: The test network name.
+ :vartype network_name: str
+ :ivar network_friendly_name: The test network friendly name.
+ :vartype network_friendly_name: str
+ :ivar network_type: The test network type (see TestFailoverInput enum for possible values).
+ :vartype network_type: str
+ :ivar protected_item_details: The test VM details.
+ :vartype protected_item_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.FailoverReplicationProtectedItemDetails]
"""
_validation = {
@@ -5332,137 +6810,125 @@ class AzureToAzureUpdateNetworkMappingInput(FabricSpecificUpdateNetworkMappingIn
_attribute_map = {
"instance_type": {"key": "instanceType", "type": "str"},
- "primary_network_id": {"key": "primaryNetworkId", "type": "str"},
+ "affected_object_details": {"key": "affectedObjectDetails", "type": "{str}"},
+ "test_failover_status": {"key": "testFailoverStatus", "type": "str"},
+ "comments": {"key": "comments", "type": "str"},
+ "network_name": {"key": "networkName", "type": "str"},
+ "network_friendly_name": {"key": "networkFriendlyName", "type": "str"},
+ "network_type": {"key": "networkType", "type": "str"},
+ "protected_item_details": {"key": "protectedItemDetails", "type": "[FailoverReplicationProtectedItemDetails]"},
}
- def __init__(self, *, primary_network_id: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ affected_object_details: Optional[Dict[str, str]] = None,
+ test_failover_status: Optional[str] = None,
+ comments: Optional[str] = None,
+ network_name: Optional[str] = None,
+ network_friendly_name: Optional[str] = None,
+ network_type: Optional[str] = None,
+ protected_item_details: Optional[List["_models.FailoverReplicationProtectedItemDetails"]] = None,
+ **kwargs: Any
+ ) -> None:
"""
- :keyword primary_network_id: The primary azure vnet Id.
- :paramtype primary_network_id: str
+ :keyword affected_object_details: The affected object properties like source server, source
+ cloud, target server, target cloud etc. based on the workflow object details.
+ :paramtype affected_object_details: dict[str, str]
+ :keyword test_failover_status: The test failover status.
+ :paramtype test_failover_status: str
+ :keyword comments: The test failover comments.
+ :paramtype comments: str
+ :keyword network_name: The test network name.
+ :paramtype network_name: str
+ :keyword network_friendly_name: The test network friendly name.
+ :paramtype network_friendly_name: str
+ :keyword network_type: The test network type (see TestFailoverInput enum for possible values).
+ :paramtype network_type: str
+ :keyword protected_item_details: The test VM details.
+ :paramtype protected_item_details:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.FailoverReplicationProtectedItemDetails]
"""
- super().__init__(**kwargs)
- self.instance_type: str = "AzureToAzure"
- self.primary_network_id = primary_network_id
+ super().__init__(affected_object_details=affected_object_details, **kwargs)
+ self.instance_type: str = "ClusterTestFailoverJobDetails"
+ self.test_failover_status = test_failover_status
+ self.comments = comments
+ self.network_name = network_name
+ self.network_friendly_name = network_friendly_name
+ self.network_type = network_type
+ self.protected_item_details = protected_item_details
-class AzureToAzureVmSyncedConfigDetails(_serialization.Model):
- """Azure to Azure VM synced configuration details.
+class ClusterUnplannedFailoverInput(_serialization.Model):
+ """Input definition for unplanned cluster failover.
- :ivar tags: The Azure VM tags.
- :vartype tags: dict[str, str]
- :ivar input_endpoints: The Azure VM input endpoints.
- :vartype input_endpoints: list[~azure.mgmt.recoveryservicessiterecovery.models.InputEndpoint]
+ All required parameters must be populated in order to send to server.
+
+ :ivar properties: Unplanned failover input properties. Required.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInputProperties
"""
+ _validation = {
+ "properties": {"required": True},
+ }
+
_attribute_map = {
- "tags": {"key": "tags", "type": "{str}"},
- "input_endpoints": {"key": "inputEndpoints", "type": "[InputEndpoint]"},
+ "properties": {"key": "properties", "type": "ClusterUnplannedFailoverInputProperties"},
}
- def __init__(
- self,
- *,
- tags: Optional[Dict[str, str]] = None,
- input_endpoints: Optional[List["_models.InputEndpoint"]] = None,
- **kwargs: Any
- ) -> None:
+ def __init__(self, *, properties: "_models.ClusterUnplannedFailoverInputProperties", **kwargs: Any) -> None:
"""
- :keyword tags: The Azure VM tags.
- :paramtype tags: dict[str, str]
- :keyword input_endpoints: The Azure VM input endpoints.
- :paramtype input_endpoints: list[~azure.mgmt.recoveryservicessiterecovery.models.InputEndpoint]
+ :keyword properties: Unplanned failover input properties. Required.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInputProperties
"""
super().__init__(**kwargs)
- self.tags = tags
- self.input_endpoints = input_endpoints
+ self.properties = properties
-class AzureVmDiskDetails(_serialization.Model):
- """Disk details for E2A provider.
+class ClusterUnplannedFailoverInputProperties(_serialization.Model):
+ """Input definition for unplanned failover input properties.
- :ivar vhd_type: VHD type.
- :vartype vhd_type: str
- :ivar vhd_id: The VHD id.
- :vartype vhd_id: str
- :ivar disk_id: The disk resource id.
- :vartype disk_id: str
- :ivar vhd_name: VHD name.
- :vartype vhd_name: str
- :ivar max_size_mb: Max side in MB.
- :vartype max_size_mb: str
- :ivar target_disk_location: Blob uri of the Azure disk.
- :vartype target_disk_location: str
- :ivar target_disk_name: The target Azure disk name.
- :vartype target_disk_name: str
- :ivar lun_id: Ordinal\LunId of the disk for the Azure VM.
- :vartype lun_id: str
- :ivar disk_encryption_set_id: The DiskEncryptionSet ARM ID.
- :vartype disk_encryption_set_id: str
- :ivar custom_target_disk_name: The custom target Azure disk name.
- :vartype custom_target_disk_name: str
+ :ivar failover_direction: Failover direction.
+ :vartype failover_direction: str
+ :ivar source_site_operations: Source site operations status.
+ :vartype source_site_operations: str
+ :ivar provider_specific_details: Provider specific settings.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverProviderSpecificInput
"""
_attribute_map = {
- "vhd_type": {"key": "vhdType", "type": "str"},
- "vhd_id": {"key": "vhdId", "type": "str"},
- "disk_id": {"key": "diskId", "type": "str"},
- "vhd_name": {"key": "vhdName", "type": "str"},
- "max_size_mb": {"key": "maxSizeMB", "type": "str"},
- "target_disk_location": {"key": "targetDiskLocation", "type": "str"},
- "target_disk_name": {"key": "targetDiskName", "type": "str"},
- "lun_id": {"key": "lunId", "type": "str"},
- "disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
- "custom_target_disk_name": {"key": "customTargetDiskName", "type": "str"},
+ "failover_direction": {"key": "failoverDirection", "type": "str"},
+ "source_site_operations": {"key": "sourceSiteOperations", "type": "str"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ClusterUnplannedFailoverProviderSpecificInput",
+ },
}
def __init__(
self,
*,
- vhd_type: Optional[str] = None,
- vhd_id: Optional[str] = None,
- disk_id: Optional[str] = None,
- vhd_name: Optional[str] = None,
- max_size_mb: Optional[str] = None,
- target_disk_location: Optional[str] = None,
- target_disk_name: Optional[str] = None,
- lun_id: Optional[str] = None,
- disk_encryption_set_id: Optional[str] = None,
- custom_target_disk_name: Optional[str] = None,
+ failover_direction: Optional[str] = None,
+ source_site_operations: Optional[str] = None,
+ provider_specific_details: Optional["_models.ClusterUnplannedFailoverProviderSpecificInput"] = None,
**kwargs: Any
) -> None:
"""
- :keyword vhd_type: VHD type.
- :paramtype vhd_type: str
- :keyword vhd_id: The VHD id.
- :paramtype vhd_id: str
- :keyword disk_id: The disk resource id.
- :paramtype disk_id: str
- :keyword vhd_name: VHD name.
- :paramtype vhd_name: str
- :keyword max_size_mb: Max side in MB.
- :paramtype max_size_mb: str
- :keyword target_disk_location: Blob uri of the Azure disk.
- :paramtype target_disk_location: str
- :keyword target_disk_name: The target Azure disk name.
- :paramtype target_disk_name: str
- :keyword lun_id: Ordinal\LunId of the disk for the Azure VM.
- :paramtype lun_id: str
- :keyword disk_encryption_set_id: The DiskEncryptionSet ARM ID.
- :paramtype disk_encryption_set_id: str
- :keyword custom_target_disk_name: The custom target Azure disk name.
- :paramtype custom_target_disk_name: str
+ :keyword failover_direction: Failover direction.
+ :paramtype failover_direction: str
+ :keyword source_site_operations: Source site operations status.
+ :paramtype source_site_operations: str
+ :keyword provider_specific_details: Provider specific settings.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverProviderSpecificInput
"""
super().__init__(**kwargs)
- self.vhd_type = vhd_type
- self.vhd_id = vhd_id
- self.disk_id = disk_id
- self.vhd_name = vhd_name
- self.max_size_mb = max_size_mb
- self.target_disk_location = target_disk_location
- self.target_disk_name = target_disk_name
- self.lun_id = lun_id
- self.disk_encryption_set_id = disk_encryption_set_id
- self.custom_target_disk_name = custom_target_disk_name
+ self.failover_direction = failover_direction
+ self.source_site_operations = source_site_operations
+ self.provider_specific_details = provider_specific_details
class ComputeSizeErrorDetails(_serialization.Model):
@@ -5497,7 +6963,7 @@ class ConfigurationSettings(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
HyperVVirtualMachineDetails, ReplicationGroupDetails, VMwareVirtualMachineDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -5592,7 +7058,7 @@ def __init__(
class ConsistencyCheckTaskDetails(TaskTypeDetails):
"""This class contains monitoring details of all the inconsistent Protected Entities in Vmm.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -5624,7 +7090,7 @@ def __init__(self, *, vm_details: Optional[List["_models.InconsistentVmDetails"]
class CreateNetworkMappingInput(_serialization.Model):
"""Create network mappings input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Input properties for creating network mapping. Required.
:vartype properties:
@@ -5652,7 +7118,7 @@ def __init__(self, *, properties: "_models.CreateNetworkMappingInputProperties",
class CreateNetworkMappingInputProperties(_serialization.Model):
"""Common input details for network mapping operation.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar recovery_fabric_name: Recovery fabric Name.
:vartype recovery_fabric_name: str
@@ -5820,7 +7286,7 @@ def __init__(
self.properties = properties
-class CreateProtectionContainerMappingInputProperties(_serialization.Model):
+class CreateProtectionContainerMappingInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Configure pairing input properties.
:ivar target_protection_container_id: The target unique protection container name.
@@ -5923,7 +7389,7 @@ def __init__(
class CreateRecoveryPlanInput(_serialization.Model):
"""Create recovery plan input class.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Recovery plan creation properties. Required.
:vartype properties:
@@ -5951,7 +7417,7 @@ def __init__(self, *, properties: "_models.CreateRecoveryPlanInputProperties", *
class CreateRecoveryPlanInputProperties(_serialization.Model):
"""Recovery plan creation properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar primary_fabric_id: The primary fabric Id. Required.
:vartype primary_fabric_id: str
@@ -6215,7 +7681,7 @@ def __init__(self, **kwargs: Any) -> None:
class DisableProtectionInput(_serialization.Model):
"""Disable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Disable protection input properties. Required.
:vartype properties:
@@ -6287,7 +7753,7 @@ class DisableProtectionProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
InMageDisableProtectionProviderSpecificInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -6656,7 +8122,7 @@ def __init__(self, **kwargs: Any) -> None:
class EnableMigrationInput(_serialization.Model):
"""Enable migration input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Enable migration input properties. Required.
:vartype properties:
@@ -6684,7 +8150,7 @@ def __init__(self, *, properties: "_models.EnableMigrationInputProperties", **kw
class EnableMigrationInputProperties(_serialization.Model):
"""Enable migration input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar policy_id: The policy Id. Required.
:vartype policy_id: str
@@ -6728,7 +8194,7 @@ class EnableMigrationProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtEnableMigrationInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -7026,7 +8492,7 @@ def __init__(
self.next_link = next_link
-class EventProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class EventProperties(_serialization.Model):
"""The properties of a monitoring event.
:ivar event_code: The Id of the monitoring event.
@@ -7214,7 +8680,7 @@ class EventSpecificDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
JobStatusEventDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -7242,7 +8708,7 @@ class ProtectionProfileCustomDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingProtectionProfile, NewProtectionProfile
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7267,7 +8733,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingProtectionProfile(ProtectionProfileCustomDetails):
"""Existing storage account input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7303,7 +8769,7 @@ class RecoveryAvailabilitySetCustomDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingRecoveryAvailabilitySet
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7328,7 +8794,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingRecoveryAvailabilitySet(RecoveryAvailabilitySetCustomDetails):
"""Existing recovery availability set input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7357,13 +8823,13 @@ def __init__(self, *, recovery_availability_set_id: Optional[str] = None, **kwar
self.recovery_availability_set_id = recovery_availability_set_id
-class RecoveryProximityPlacementGroupCustomDetails(_serialization.Model):
+class RecoveryProximityPlacementGroupCustomDetails(_serialization.Model): # pylint: disable=name-too-long
"""Recovery Proximity placement group custom input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingRecoveryProximityPlacementGroup
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7388,7 +8854,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingRecoveryProximityPlacementGroup(RecoveryProximityPlacementGroupCustomDetails):
"""Existing recovery proximity placement group input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7423,7 +8889,7 @@ class RecoveryResourceGroupCustomDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingRecoveryResourceGroup
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7448,7 +8914,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingRecoveryResourceGroup(RecoveryResourceGroupCustomDetails):
"""Existing recovery resource group input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7481,7 +8947,7 @@ class RecoveryVirtualNetworkCustomDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingRecoveryVirtualNetwork, NewRecoveryVirtualNetwork
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7506,7 +8972,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingRecoveryVirtualNetwork(RecoveryVirtualNetworkCustomDetails):
"""Existing recovery virtual network input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7550,7 +9016,7 @@ class StorageAccountCustomDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
ExistingStorageAccount
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7575,7 +9041,7 @@ def __init__(self, **kwargs: Any) -> None:
class ExistingStorageAccount(StorageAccountCustomDetails):
"""Existing storage account input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -7608,7 +9074,7 @@ def __init__(self, *, azure_storage_account_id: str, **kwargs: Any) -> None:
class ExportJobDetails(JobDetails):
"""This class represents details for export jobs workflow.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
values). Required.
@@ -7659,7 +9125,7 @@ def __init__(
class ExtendedLocation(_serialization.Model):
"""Extended location of the resource.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar name: The name of the extended location. Required.
:vartype name: str
@@ -7973,7 +9439,7 @@ class JobTaskDetails(TaskTypeDetails):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
FabricReplicationGroupTaskDetails, VirtualMachineTaskDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -8010,7 +9476,7 @@ def __init__(self, *, job_task: Optional["_models.JobEntity"] = None, **kwargs:
class FabricReplicationGroupTaskDetails(JobTaskDetails):
"""This class represents the fabric replication group task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -8058,7 +9524,7 @@ def __init__(
class FailoverJobDetails(JobDetails):
"""This class represents the details for a failover job.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
values). Required.
@@ -8325,7 +9791,7 @@ class GroupTaskDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
InlineWorkflowTaskDetails, RecoveryPlanGroupTaskDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -8359,7 +9825,7 @@ def __init__(self, *, child_tasks: Optional[List["_models.ASRTask"]] = None, **k
self.child_tasks = child_tasks
-class HealthError(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class HealthError(_serialization.Model):
"""Health Error.
:ivar inner_health_errors: The inner health errors. HealthError having a list of HealthError as
@@ -8611,7 +10077,7 @@ def __init__(self, **kwargs: Any) -> None:
class HyperVReplica2012EventDetails(EventProviderSpecificDetails):
"""Model class for event details of a HyperVReplica E2E event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -8667,7 +10133,7 @@ def __init__(
class HyperVReplica2012R2EventDetails(EventProviderSpecificDetails):
"""Model class for event details of a HyperVReplica blue E2E event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -8720,10 +10186,12 @@ def __init__(
self.remote_fabric_name = remote_fabric_name
-class HyperVReplicaAzureApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
+class HyperVReplicaAzureApplyRecoveryPointInput(
+ ApplyRecoveryPointProviderSpecificInput
+): # pylint: disable=name-too-long
"""ApplyRecoveryPoint input specific to HyperVReplicaAzure provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -8769,11 +10237,19 @@ class HyperVReplicaAzureDiskInputDetails(_serialization.Model):
:vartype disk_id: str
:ivar log_storage_account_id: The LogStorageAccountId.
:vartype log_storage_account_id: str
- :ivar disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM ID.
:vartype disk_encryption_set_id: str
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_attribute_map = {
@@ -8781,6 +10257,10 @@ class HyperVReplicaAzureDiskInputDetails(_serialization.Model):
"log_storage_account_id": {"key": "logStorageAccountId", "type": "str"},
"disk_type": {"key": "diskType", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -8790,6 +10270,10 @@ def __init__(
log_storage_account_id: Optional[str] = None,
disk_type: Optional[Union[str, "_models.DiskAccountType"]] = None,
disk_encryption_set_id: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
@@ -8797,25 +10281,35 @@ def __init__(
:paramtype disk_id: str
:keyword log_storage_account_id: The LogStorageAccountId.
:paramtype log_storage_account_id: str
- :keyword disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword disk_encryption_set_id: The DiskEncryptionSet ARM ID.
:paramtype disk_encryption_set_id: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
self.log_storage_account_id = log_storage_account_id
self.disk_type = disk_type
self.disk_encryption_set_id = disk_encryption_set_id
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class HyperVReplicaAzureEnableProtectionInput(
- EnableProtectionProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaAzureEnableProtectionInput(EnableProtectionProviderSpecificInput):
"""HyperVReplicaAzure specific enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -8825,6 +10319,8 @@ class HyperVReplicaAzureEnableProtectionInput(
:vartype vm_name: str
:ivar os_type: The OS type associated with VM.
:vartype os_type: str
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
:ivar vhd_id: The OS disk VHD id associated with VM.
:vartype vhd_id: str
:ivar target_storage_account_id: The storage account Id.
@@ -8833,7 +10329,7 @@ class HyperVReplicaAzureEnableProtectionInput(
:vartype target_azure_network_id: str
:ivar target_azure_subnet_id: The selected target Azure subnet Id.
:vartype target_azure_subnet_id: str
- :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :ivar enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:vartype enable_rdp_on_target_option: str
:ivar target_azure_vm_name: The target azure VM Name.
@@ -8863,6 +10359,13 @@ class HyperVReplicaAzureEnableProtectionInput(
"NoLicenseType", "PAYG", and "AHUB".
:vartype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :ivar target_vm_security_profile: The target VM security profile.
+ :vartype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
:ivar target_vm_size: The target VM size.
:vartype target_vm_size: str
:ivar target_proximity_placement_group_id: The proximity placement group ARM Id.
@@ -8870,8 +10373,8 @@ class HyperVReplicaAzureEnableProtectionInput(
:ivar use_managed_disks_for_replication: A value indicating whether managed disks should be
used during replication.
:vartype use_managed_disks_for_replication: str
- :ivar disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disks_to_include_for_managed_disks: The disks to include list for managed disks.
:vartype disks_to_include_for_managed_disks:
@@ -8897,6 +10400,7 @@ class HyperVReplicaAzureEnableProtectionInput(
"hv_host_vm_id": {"key": "hvHostVmId", "type": "str"},
"vm_name": {"key": "vmName", "type": "str"},
"os_type": {"key": "osType", "type": "str"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
"vhd_id": {"key": "vhdId", "type": "str"},
"target_storage_account_id": {"key": "targetStorageAccountId", "type": "str"},
"target_azure_network_id": {"key": "targetAzureNetworkId", "type": "str"},
@@ -8912,6 +10416,8 @@ class HyperVReplicaAzureEnableProtectionInput(
"target_availability_zone": {"key": "targetAvailabilityZone", "type": "str"},
"license_type": {"key": "licenseType", "type": "str"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
+ "target_vm_security_profile": {"key": "targetVmSecurityProfile", "type": "SecurityProfileProperties"},
"target_vm_size": {"key": "targetVmSize", "type": "str"},
"target_proximity_placement_group_id": {"key": "targetProximityPlacementGroupId", "type": "str"},
"use_managed_disks_for_replication": {"key": "useManagedDisksForReplication", "type": "str"},
@@ -8933,6 +10439,7 @@ def __init__( # pylint: disable=too-many-locals
hv_host_vm_id: Optional[str] = None,
vm_name: Optional[str] = None,
os_type: Optional[str] = None,
+ user_selected_os_name: Optional[str] = None,
vhd_id: Optional[str] = None,
target_storage_account_id: Optional[str] = None,
target_azure_network_id: Optional[str] = None,
@@ -8948,6 +10455,8 @@ def __init__( # pylint: disable=too-many-locals
target_availability_zone: Optional[str] = None,
license_type: Optional[Union[str, "_models.LicenseType"]] = None,
sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
+ target_vm_security_profile: Optional["_models.SecurityProfileProperties"] = None,
target_vm_size: Optional[str] = None,
target_proximity_placement_group_id: Optional[str] = None,
use_managed_disks_for_replication: Optional[str] = None,
@@ -8967,6 +10476,8 @@ def __init__( # pylint: disable=too-many-locals
:paramtype vm_name: str
:keyword os_type: The OS type associated with VM.
:paramtype os_type: str
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
:keyword vhd_id: The OS disk VHD id associated with VM.
:paramtype vhd_id: str
:keyword target_storage_account_id: The storage account Id.
@@ -8975,7 +10486,7 @@ def __init__( # pylint: disable=too-many-locals
:paramtype target_azure_network_id: str
:keyword target_azure_subnet_id: The selected target Azure subnet Id.
:paramtype target_azure_subnet_id: str
- :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :keyword enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:paramtype enable_rdp_on_target_option: str
:keyword target_azure_vm_name: The target azure VM Name.
@@ -9005,6 +10516,13 @@ def __init__( # pylint: disable=too-many-locals
"NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
:paramtype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :keyword target_vm_security_profile: The target VM security profile.
+ :paramtype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
:keyword target_vm_size: The target VM size.
:paramtype target_vm_size: str
:keyword target_proximity_placement_group_id: The proximity placement group ARM Id.
@@ -9012,8 +10530,8 @@ def __init__( # pylint: disable=too-many-locals
:keyword use_managed_disks_for_replication: A value indicating whether managed disks should be
used during replication.
:paramtype use_managed_disks_for_replication: str
- :keyword disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword disks_to_include_for_managed_disks: The disks to include list for managed disks.
:paramtype disks_to_include_for_managed_disks:
@@ -9034,6 +10552,7 @@ def __init__( # pylint: disable=too-many-locals
self.hv_host_vm_id = hv_host_vm_id
self.vm_name = vm_name
self.os_type = os_type
+ self.user_selected_os_name = user_selected_os_name
self.vhd_id = vhd_id
self.target_storage_account_id = target_storage_account_id
self.target_azure_network_id = target_azure_network_id
@@ -9049,6 +10568,8 @@ def __init__( # pylint: disable=too-many-locals
self.target_availability_zone = target_availability_zone
self.license_type = license_type
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
+ self.target_vm_security_profile = target_vm_security_profile
self.target_vm_size = target_vm_size
self.target_proximity_placement_group_id = target_proximity_placement_group_id
self.use_managed_disks_for_replication = use_managed_disks_for_replication
@@ -9064,7 +10585,7 @@ def __init__( # pylint: disable=too-many-locals
class HyperVReplicaAzureEventDetails(EventProviderSpecificDetails):
"""Model class for event details of a HyperVReplica E2A event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -9110,14 +10631,14 @@ def __init__(
self.remote_container_name = remote_container_name
-class PlannedFailoverProviderSpecificFailoverInput(_serialization.Model):
+class PlannedFailoverProviderSpecificFailoverInput(_serialization.Model): # pylint: disable=name-too-long
"""Provider specific failover input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
HyperVReplicaAzurePlannedFailoverProviderInput, HyperVReplicaAzureFailbackProviderInput,
InMageRcmFailbackPlannedFailoverProviderInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9148,7 +10669,7 @@ def __init__(self, **kwargs: Any) -> None:
class HyperVReplicaAzureFailbackProviderInput(PlannedFailoverProviderSpecificFailoverInput):
"""HyperVReplicaAzureFailback specific planned failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9205,6 +10726,18 @@ class HyperVReplicaAzureManagedDiskDetails(_serialization.Model):
:vartype replica_disk_type: str
:ivar disk_encryption_set_id: The disk encryption set ARM Id.
:vartype disk_encryption_set_id: str
+ :ivar target_disk_account_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
+ :vartype target_disk_account_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_attribute_map = {
@@ -9212,6 +10745,11 @@ class HyperVReplicaAzureManagedDiskDetails(_serialization.Model):
"seed_managed_disk_id": {"key": "seedManagedDiskId", "type": "str"},
"replica_disk_type": {"key": "replicaDiskType", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "target_disk_account_type": {"key": "targetDiskAccountType", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -9221,6 +10759,11 @@ def __init__(
seed_managed_disk_id: Optional[str] = None,
replica_disk_type: Optional[str] = None,
disk_encryption_set_id: Optional[str] = None,
+ target_disk_account_type: Optional[Union[str, "_models.DiskAccountType"]] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
@@ -9232,18 +10775,38 @@ def __init__(
:paramtype replica_disk_type: str
:keyword disk_encryption_set_id: The disk encryption set ARM Id.
:paramtype disk_encryption_set_id: str
+ :keyword target_disk_account_type: The disk type. Known values are: "Standard_LRS",
+ "Premium_LRS", "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and
+ "Premium_ZRS".
+ :paramtype target_disk_account_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
self.seed_managed_disk_id = seed_managed_disk_id
self.replica_disk_type = replica_disk_type
self.disk_encryption_set_id = disk_encryption_set_id
+ self.target_disk_account_type = target_disk_account_type
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class HyperVReplicaAzurePlannedFailoverProviderInput(PlannedFailoverProviderSpecificFailoverInput):
+class HyperVReplicaAzurePlannedFailoverProviderInput(
+ PlannedFailoverProviderSpecificFailoverInput
+): # pylint: disable=name-too-long
"""HyperVReplicaAzure specific planned failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9301,7 +10864,7 @@ def __init__(
class HyperVReplicaAzurePolicyDetails(PolicyProviderSpecificDetails):
"""Hyper-V Replica Azure specific protection profile details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -9382,7 +10945,7 @@ def __init__(
class HyperVReplicaAzurePolicyInput(PolicyProviderSpecificInput):
"""Hyper-V Replica Azure specific input for creating a protection profile.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9453,14 +11016,12 @@ def __init__(
self.storage_accounts = storage_accounts
-class HyperVReplicaAzureReplicationDetails(
- ReplicationProviderSpecificSettings
-): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaAzureReplicationDetails(ReplicationProviderSpecificSettings):
"""Hyper V Replica Azure provider specific settings.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -9507,7 +11068,7 @@ class HyperVReplicaAzureReplicationDetails(
:vartype source_vm_ram_size_in_mb: int
:ivar source_vm_cpu_count: The CPU count of the VM on the primary side.
:vartype source_vm_cpu_count: int
- :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :ivar enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:vartype enable_rdp_on_target_option: str
:ivar recovery_azure_resource_group_id: The target resource group Id.
@@ -9525,6 +11086,10 @@ class HyperVReplicaAzureReplicationDetails(
:vartype license_type: str
:ivar sql_server_license_type: The SQL Server license type.
:vartype sql_server_license_type: str
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:ivar last_recovery_point_received: The last recovery point received time.
:vartype last_recovery_point_received: ~datetime.datetime
:ivar target_vm_tags: The target VM tags.
@@ -9542,6 +11107,9 @@ class HyperVReplicaAzureReplicationDetails(
Upgrade configurations.
:vartype all_available_os_upgrade_configurations:
list[~azure.mgmt.recoveryservicessiterecovery.models.OSUpgradeSupportedVersions]
+ :ivar target_vm_security_profile: The target VM security profile.
+ :vartype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
_validation = {
@@ -9578,6 +11146,7 @@ class HyperVReplicaAzureReplicationDetails(
"use_managed_disks": {"key": "useManagedDisks", "type": "str"},
"license_type": {"key": "licenseType", "type": "str"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
"last_recovery_point_received": {"key": "lastRecoveryPointReceived", "type": "iso-8601"},
"target_vm_tags": {"key": "targetVmTags", "type": "{str}"},
"seed_managed_disk_tags": {"key": "seedManagedDiskTags", "type": "{str}"},
@@ -9588,6 +11157,7 @@ class HyperVReplicaAzureReplicationDetails(
"key": "allAvailableOSUpgradeConfigurations",
"type": "[OSUpgradeSupportedVersions]",
},
+ "target_vm_security_profile": {"key": "targetVmSecurityProfile", "type": "SecurityProfileProperties"},
}
def __init__( # pylint: disable=too-many-locals
@@ -9620,12 +11190,14 @@ def __init__( # pylint: disable=too-many-locals
use_managed_disks: Optional[str] = None,
license_type: Optional[str] = None,
sql_server_license_type: Optional[str] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
target_vm_tags: Optional[Dict[str, str]] = None,
seed_managed_disk_tags: Optional[Dict[str, str]] = None,
target_managed_disk_tags: Optional[Dict[str, str]] = None,
target_nic_tags: Optional[Dict[str, str]] = None,
protected_managed_disks: Optional[List["_models.HyperVReplicaAzureManagedDiskDetails"]] = None,
all_available_os_upgrade_configurations: Optional[List["_models.OSUpgradeSupportedVersions"]] = None,
+ target_vm_security_profile: Optional["_models.SecurityProfileProperties"] = None,
**kwargs: Any
) -> None:
"""
@@ -9672,7 +11244,7 @@ def __init__( # pylint: disable=too-many-locals
:paramtype source_vm_ram_size_in_mb: int
:keyword source_vm_cpu_count: The CPU count of the VM on the primary side.
:paramtype source_vm_cpu_count: int
- :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :keyword enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:paramtype enable_rdp_on_target_option: str
:keyword recovery_azure_resource_group_id: The target resource group Id.
@@ -9690,6 +11262,10 @@ def __init__( # pylint: disable=too-many-locals
:paramtype license_type: str
:keyword sql_server_license_type: The SQL Server license type.
:paramtype sql_server_license_type: str
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:keyword target_vm_tags: The target VM tags.
:paramtype target_vm_tags: dict[str, str]
:keyword seed_managed_disk_tags: The tags for the seed managed disks.
@@ -9705,6 +11281,9 @@ def __init__( # pylint: disable=too-many-locals
Upgrade configurations.
:paramtype all_available_os_upgrade_configurations:
list[~azure.mgmt.recoveryservicessiterecovery.models.OSUpgradeSupportedVersions]
+ :keyword target_vm_security_profile: The target VM security profile.
+ :paramtype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
super().__init__(**kwargs)
self.instance_type: str = "HyperVReplicaAzure"
@@ -9735,6 +11314,7 @@ def __init__( # pylint: disable=too-many-locals
self.use_managed_disks = use_managed_disks
self.license_type = license_type
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
self.last_recovery_point_received = None
self.target_vm_tags = target_vm_tags
self.seed_managed_disk_tags = seed_managed_disk_tags
@@ -9742,12 +11322,13 @@ def __init__( # pylint: disable=too-many-locals
self.target_nic_tags = target_nic_tags
self.protected_managed_disks = protected_managed_disks
self.all_available_os_upgrade_configurations = all_available_os_upgrade_configurations
+ self.target_vm_security_profile = target_vm_security_profile
class HyperVReplicaAzureReprotectInput(ReverseReplicationProviderSpecificInput):
"""Azure specific reprotect input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9817,7 +11398,7 @@ def __init__(
class HyperVReplicaAzureTestFailoverInput(TestFailoverProviderSpecificInput):
"""HvrA provider specific input for test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9875,7 +11456,7 @@ def __init__(
class HyperVReplicaAzureUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
"""HvrA provider specific input for unplanned failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9925,10 +11506,10 @@ def __init__(
class HyperVReplicaAzureUpdateReplicationProtectedItemInput(
UpdateReplicationProtectedItemProviderInput
-): # pylint: disable=too-many-instance-attributes
+): # pylint: disable=name-too-long
"""HyperV replica Azure input to update replication protected item.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -9958,6 +11539,12 @@ class HyperVReplicaAzureUpdateReplicationProtectedItemInput(
"NoLicenseType", "PAYG", and "AHUB".
:vartype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
:ivar vm_disks: The list of disk update properties.
:vartype vm_disks: list[~azure.mgmt.recoveryservicessiterecovery.models.UpdateDiskInput]
"""
@@ -9978,6 +11565,8 @@ class HyperVReplicaAzureUpdateReplicationProtectedItemInput(
"target_managed_disk_tags": {"key": "targetManagedDiskTags", "type": "{str}"},
"target_nic_tags": {"key": "targetNicTags", "type": "{str}"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
"vm_disks": {"key": "vmDisks", "type": "[UpdateDiskInput]"},
}
@@ -9994,6 +11583,8 @@ def __init__(
target_managed_disk_tags: Optional[Dict[str, str]] = None,
target_nic_tags: Optional[Dict[str, str]] = None,
sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
+ user_selected_os_name: Optional[str] = None,
vm_disks: Optional[List["_models.UpdateDiskInput"]] = None,
**kwargs: Any
) -> None:
@@ -10024,6 +11615,12 @@ def __init__(
"NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
:paramtype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
:keyword vm_disks: The list of disk update properties.
:paramtype vm_disks: list[~azure.mgmt.recoveryservicessiterecovery.models.UpdateDiskInput]
"""
@@ -10039,13 +11636,15 @@ def __init__(
self.target_managed_disk_tags = target_managed_disk_tags
self.target_nic_tags = target_nic_tags
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
+ self.user_selected_os_name = user_selected_os_name
self.vm_disks = vm_disks
class HyperVReplicaBaseEventDetails(EventProviderSpecificDetails):
"""Abstract model class for event details of a HyperVReplica E2E event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -10098,10 +11697,10 @@ def __init__(
self.remote_fabric_name = remote_fabric_name
-class HyperVReplicaBasePolicyDetails(PolicyProviderSpecificDetails): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaBasePolicyDetails(PolicyProviderSpecificDetails):
"""Base class for HyperVReplica policy details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -10206,7 +11805,7 @@ def __init__(
class HyperVReplicaBaseReplicationDetails(ReplicationProviderSpecificSettings):
"""Hyper V replica provider specific settings base class.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -10282,10 +11881,10 @@ def __init__(
self.v_m_disk_details = v_m_disk_details
-class HyperVReplicaBluePolicyDetails(PolicyProviderSpecificDetails): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaBluePolicyDetails(PolicyProviderSpecificDetails):
"""Hyper-V Replica Blue specific protection profile details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -10394,13 +11993,13 @@ def __init__(
self.replica_deletion_option = replica_deletion_option
-class HyperVReplicaPolicyInput(PolicyProviderSpecificInput): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaPolicyInput(PolicyProviderSpecificInput):
"""Hyper-V Replica specific policy Input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
HyperVReplicaBluePolicyInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -10502,10 +12101,10 @@ def __init__(
self.replica_deletion = replica_deletion
-class HyperVReplicaBluePolicyInput(HyperVReplicaPolicyInput): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaBluePolicyInput(HyperVReplicaPolicyInput):
"""HyperV Replica Blue policy input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -10617,7 +12216,7 @@ def __init__(
class HyperVReplicaBlueReplicationDetails(ReplicationProviderSpecificSettings):
"""HyperV replica 2012 R2 (Blue) replication details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -10693,10 +12292,10 @@ def __init__(
self.v_m_disk_details = v_m_disk_details
-class HyperVReplicaPolicyDetails(PolicyProviderSpecificDetails): # pylint: disable=too-many-instance-attributes
+class HyperVReplicaPolicyDetails(PolicyProviderSpecificDetails):
"""Hyper-V Replica Blue specific protection profile details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -10801,7 +12400,7 @@ def __init__(
class HyperVReplicaReplicationDetails(ReplicationProviderSpecificSettings):
"""HyperV replica 2012 replication details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -10880,7 +12479,7 @@ def __init__(
class HyperVSiteDetails(FabricSpecificDetails):
"""HyperVSite fabric specific details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -10914,7 +12513,7 @@ class HyperVVirtualMachineDetails(ConfigurationSettings):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VmmVirtualMachineDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -11078,7 +12677,7 @@ def __init__(
class IdentityProviderInput(_serialization.Model):
"""Identity provider input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar tenant_id: The tenant Id for the service principal with which the on-premise
management/data plane components would communicate with our Azure services. Required.
@@ -11224,7 +12823,7 @@ def __init__(
class InlineWorkflowTaskDetails(GroupTaskDetails):
"""This class represents the inline workflow task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -11313,7 +12912,7 @@ def __init__(
class InMageAzureV2ApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
"""ApplyRecoveryPoint input specific to InMageAzureV2 provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -11340,8 +12939,8 @@ class InMageAzureV2DiskInputDetails(_serialization.Model):
:vartype disk_id: str
:ivar log_storage_account_id: The LogStorageAccountId.
:vartype log_storage_account_id: str
- :ivar disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM ID.
:vartype disk_encryption_set_id: str
@@ -11368,8 +12967,8 @@ def __init__(
:paramtype disk_id: str
:keyword log_storage_account_id: The LogStorageAccountId.
:paramtype log_storage_account_id: str
- :keyword disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword disk_encryption_set_id: The DiskEncryptionSet ARM ID.
:paramtype disk_encryption_set_id: str
@@ -11381,12 +12980,10 @@ def __init__(
self.disk_encryption_set_id = disk_encryption_set_id
-class InMageAzureV2EnableProtectionInput(
- EnableProtectionProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class InMageAzureV2EnableProtectionInput(EnableProtectionProviderSpecificInput):
"""VMware Azure specific enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -11409,7 +13006,7 @@ class InMageAzureV2EnableProtectionInput(
:vartype target_azure_network_id: str
:ivar target_azure_subnet_id: The selected target Azure subnet Id.
:vartype target_azure_subnet_id: str
- :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
+ :ivar enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target VM after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:vartype enable_rdp_on_target_option: str
:ivar target_azure_vm_name: The target azure VM Name.
@@ -11422,8 +13019,8 @@ class InMageAzureV2EnableProtectionInput(
:ivar target_azure_v2_resource_group_id: The Id of the target resource group (for resource
manager deployment) in which the failover VM is to be created.
:vartype target_azure_v2_resource_group_id: str
- :ivar disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar target_availability_set_id: The target availability set ARM Id for resource manager
deployment.
@@ -11538,7 +13135,7 @@ def __init__( # pylint: disable=too-many-locals
:paramtype target_azure_network_id: str
:keyword target_azure_subnet_id: The selected target Azure subnet Id.
:paramtype target_azure_subnet_id: str
- :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
+ :keyword enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target VM after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:paramtype enable_rdp_on_target_option: str
:keyword target_azure_vm_name: The target azure VM Name.
@@ -11551,8 +13148,8 @@ def __init__( # pylint: disable=too-many-locals
:keyword target_azure_v2_resource_group_id: The Id of the target resource group (for resource
manager deployment) in which the failover VM is to be created.
:paramtype target_azure_v2_resource_group_id: str
- :keyword disk_type: The DiskType. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword target_availability_set_id: The target availability set ARM Id for resource manager
deployment.
@@ -11614,7 +13211,7 @@ def __init__( # pylint: disable=too-many-locals
class InMageAzureV2EventDetails(EventProviderSpecificDetails):
"""Model class for event details of a VMwareAzureV2 event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -11746,7 +13343,7 @@ def __init__(
class InMageAzureV2PolicyDetails(PolicyProviderSpecificDetails):
"""InMage Azure v2 specific protection profile details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -11813,7 +13410,7 @@ def __init__(
class InMageAzureV2PolicyInput(PolicyProviderSpecificInput):
"""VMWare Azure specific policy Input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -11883,7 +13480,7 @@ def __init__(
self.multi_vm_sync_status = multi_vm_sync_status
-class InMageAzureV2ProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageAzureV2ProtectedDiskDetails(_serialization.Model):
"""InMageAzureV2 protected disk details.
:ivar disk_id: The disk id.
@@ -12065,7 +13662,7 @@ def __init__(
class InMageAzureV2RecoveryPointDetails(ProviderSpecificRecoveryPointDetails):
"""InMage Azure V2 provider specific recovery point details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the provider type. Required.
:vartype instance_type: str
@@ -12094,14 +13691,12 @@ def __init__(self, *, is_multi_vm_sync_point: Optional[str] = None, **kwargs: An
self.is_multi_vm_sync_point = is_multi_vm_sync_point
-class InMageAzureV2ReplicationDetails(
- ReplicationProviderSpecificSettings
-): # pylint: disable=too-many-instance-attributes
+class InMageAzureV2ReplicationDetails(ReplicationProviderSpecificSettings):
"""InMageAzureV2 provider specific settings.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -12190,7 +13785,7 @@ class InMageAzureV2ReplicationDetails(
:ivar discovery_type: A value indicating the discovery type of the machine. Value can be
vCenter or physical.
:vartype discovery_type: str
- :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :ivar enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:vartype enable_rdp_on_target_option: str
:ivar datastores: The datastores of the on-premise machine. Value can be list of strings that
@@ -12513,7 +14108,7 @@ def __init__( # pylint: disable=too-many-locals
:keyword discovery_type: A value indicating the discovery type of the machine. Value can be
vCenter or physical.
:paramtype discovery_type: str
- :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :keyword enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:paramtype enable_rdp_on_target_option: str
:keyword datastores: The datastores of the on-premise machine. Value can be list of strings
@@ -12661,7 +14256,7 @@ def __init__( # pylint: disable=too-many-locals
class InMageAzureV2ReprotectInput(ReverseReplicationProviderSpecificInput):
"""InMageAzureV2 specific provider input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -12735,7 +14330,7 @@ def __init__(
self.disks_to_include = disks_to_include
-class InMageAzureV2SwitchProviderBlockingErrorDetails(_serialization.Model):
+class InMageAzureV2SwitchProviderBlockingErrorDetails(_serialization.Model): # pylint: disable=name-too-long
"""InMageAzureV2 switch provider blocking error details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -12827,7 +14422,7 @@ class SwitchProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
InMageAzureV2SwitchProviderInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -12852,7 +14447,7 @@ def __init__(self, **kwargs: Any) -> None:
class InMageAzureV2SwitchProviderInput(SwitchProviderSpecificInput):
"""Provider specific input for InMageAzureV2 switch provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -12897,7 +14492,7 @@ def __init__(self, *, target_vault_id: str, target_fabric_id: str, target_applia
class InMageAzureV2TestFailoverInput(TestFailoverProviderSpecificInput):
"""InMageAzureV2 provider specific input for test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -12937,7 +14532,7 @@ def __init__(
class InMageAzureV2UnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
"""InMageAzureV2 provider specific input for unplanned failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -12976,10 +14571,10 @@ def __init__(
class InMageAzureV2UpdateReplicationProtectedItemInput(
UpdateReplicationProtectedItemProviderInput
-): # pylint: disable=too-many-instance-attributes
+): # pylint: disable=name-too-long
"""InMage Azure V2 input to update replication protected item.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -13087,7 +14682,7 @@ def __init__(
class InMageBasePolicyDetails(PolicyProviderSpecificDetails):
"""Base class for the policies of providers using InMage replication.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -13142,10 +14737,12 @@ def __init__(
self.multi_vm_sync_status = multi_vm_sync_status
-class InMageDisableProtectionProviderSpecificInput(DisableProtectionProviderSpecificInput):
+class InMageDisableProtectionProviderSpecificInput(
+ DisableProtectionProviderSpecificInput
+): # pylint: disable=name-too-long
"""InMage disable protection provider specific input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -13291,12 +14888,10 @@ def __init__(self, *, disk_signature: Optional[str] = None, **kwargs: Any) -> No
self.disk_signature = disk_signature
-class InMageEnableProtectionInput(
- EnableProtectionProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class InMageEnableProtectionInput(EnableProtectionProviderSpecificInput):
"""VMware Azure specific enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -13398,7 +14993,7 @@ def __init__(
self.disks_to_include = disks_to_include
-class InMageFabricSwitchProviderBlockingErrorDetails(_serialization.Model):
+class InMageFabricSwitchProviderBlockingErrorDetails(_serialization.Model): # pylint: disable=name-too-long
"""InMageFabric switch provider blocking error details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -13449,7 +15044,7 @@ def __init__(self, **kwargs: Any) -> None:
class InMagePolicyDetails(PolicyProviderSpecificDetails):
"""InMage specific protection profile details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -13507,7 +15102,7 @@ def __init__(
class InMagePolicyInput(PolicyProviderSpecificInput):
"""VMWare Azure specific protection profile Input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -13568,7 +15163,7 @@ def __init__(
self.multi_vm_sync_status = multi_vm_sync_status
-class InMageProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageProtectedDiskDetails(_serialization.Model):
"""InMage protected disk details.
:ivar disk_id: The disk id.
@@ -13740,7 +15335,38 @@ def __init__(
self.progress_status = progress_status
-class InMageRcmAgentUpgradeBlockingErrorDetails(_serialization.Model):
+class InMageRcmAddDisksInput(AddDisksProviderSpecificInput):
+ """InMageRcm add disk(s) input.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar instance_type: The class type. Required.
+ :vartype instance_type: str
+ :ivar disks: The list of disk details. Required.
+ :vartype disks: list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmDiskInput]
+ """
+
+ _validation = {
+ "instance_type": {"required": True},
+ "disks": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ "disks": {"key": "disks", "type": "[InMageRcmDiskInput]"},
+ }
+
+ def __init__(self, *, disks: List["_models.InMageRcmDiskInput"], **kwargs: Any) -> None:
+ """
+ :keyword disks: The list of disk details. Required.
+ :paramtype disks: list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmDiskInput]
+ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "InMageRcm"
+ self.disks = disks
+
+
+class InMageRcmAgentUpgradeBlockingErrorDetails(_serialization.Model): # pylint: disable=name-too-long
"""InMageRcm source agent upgrade blocking error details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -13788,7 +15414,7 @@ def __init__(self, **kwargs: Any) -> None:
self.error_tags = None
-class InMageRcmApplianceDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageRcmApplianceDetails(_serialization.Model):
"""InMageRcm appliance details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -13871,7 +15497,7 @@ class InMageRcmApplianceSpecificDetails(ApplianceSpecificDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -13900,7 +15526,7 @@ def __init__(self, **kwargs: Any) -> None:
class InMageRcmApplyRecoveryPointInput(ApplyRecoveryPointProviderSpecificInput):
"""ApplyRecoveryPoint input specific to InMageRcm provider.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -13928,7 +15554,7 @@ def __init__(self, *, recovery_point_id: str, **kwargs: Any) -> None:
self.recovery_point_id = recovery_point_id
-class InMageRcmDiscoveredProtectedVmDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageRcmDiscoveredProtectedVmDetails(_serialization.Model):
"""InMageRcm discovered protected VM details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -14009,17 +15635,25 @@ def __init__(self, **kwargs: Any) -> None:
class InMageRcmDiskInput(_serialization.Model):
"""InMageRcm disk input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_id: The disk Id. Required.
:vartype disk_id: str
:ivar log_storage_account_id: The log storage account ARM Id. Required.
:vartype log_storage_account_id: str
- :ivar disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:vartype disk_encryption_set_id: str
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -14033,6 +15667,10 @@ class InMageRcmDiskInput(_serialization.Model):
"log_storage_account_id": {"key": "logStorageAccountId", "type": "str"},
"disk_type": {"key": "diskType", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -14042,6 +15680,10 @@ def __init__(
log_storage_account_id: str,
disk_type: Union[str, "_models.DiskAccountType"],
disk_encryption_set_id: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
@@ -14050,30 +15692,50 @@ def __init__(
:keyword log_storage_account_id: The log storage account ARM Id. Required.
:paramtype log_storage_account_id: str
:keyword disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS",
- and "StandardSSD_LRS".
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:paramtype disk_encryption_set_id: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
self.log_storage_account_id = log_storage_account_id
self.disk_type = disk_type
self.disk_encryption_set_id = disk_encryption_set_id
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
class InMageRcmDisksDefaultInput(_serialization.Model):
"""InMageRcm disk input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar log_storage_account_id: The log storage account ARM Id. Required.
:vartype log_storage_account_id: str
- :ivar disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:vartype disk_encryption_set_id: str
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -14085,6 +15747,10 @@ class InMageRcmDisksDefaultInput(_serialization.Model):
"log_storage_account_id": {"key": "logStorageAccountId", "type": "str"},
"disk_type": {"key": "diskType", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -14093,29 +15759,43 @@ def __init__(
log_storage_account_id: str,
disk_type: Union[str, "_models.DiskAccountType"],
disk_encryption_set_id: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
:keyword log_storage_account_id: The log storage account ARM Id. Required.
:paramtype log_storage_account_id: str
:keyword disk_type: The disk type. Required. Known values are: "Standard_LRS", "Premium_LRS",
- and "StandardSSD_LRS".
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:paramtype disk_encryption_set_id: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.log_storage_account_id = log_storage_account_id
self.disk_type = disk_type
self.disk_encryption_set_id = disk_encryption_set_id
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class InMageRcmEnableProtectionInput(
- EnableProtectionProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class InMageRcmEnableProtectionInput(EnableProtectionProviderSpecificInput):
"""InMageRcm specific enable protection input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -14159,6 +15839,31 @@ class InMageRcmEnableProtectionInput(
:vartype process_server_id: str
:ivar multi_vm_group_name: The multi VM group name.
:vartype multi_vm_group_name: str
+ :ivar sql_server_license_type: The SQL Server license type. Known values are: "NotSpecified",
+ "NoLicenseType", "PAYG", and "AHUB".
+ :vartype sql_server_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :ivar target_vm_tags: The target VM tags.
+ :vartype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar seed_managed_disk_tags: The tags for the seed managed disks.
+ :vartype seed_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_managed_disk_tags: The tags for the target managed disks.
+ :vartype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_nic_tags: The tags for the target NICs.
+ :vartype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
+ :ivar target_vm_security_profile: The target VM security profile.
+ :vartype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
_validation = {
@@ -14188,9 +15893,17 @@ class InMageRcmEnableProtectionInput(
"run_as_account_id": {"key": "runAsAccountId", "type": "str"},
"process_server_id": {"key": "processServerId", "type": "str"},
"multi_vm_group_name": {"key": "multiVmGroupName", "type": "str"},
+ "sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
+ "target_vm_tags": {"key": "targetVmTags", "type": "[UserCreatedResourceTag]"},
+ "seed_managed_disk_tags": {"key": "seedManagedDiskTags", "type": "[UserCreatedResourceTag]"},
+ "target_managed_disk_tags": {"key": "targetManagedDiskTags", "type": "[UserCreatedResourceTag]"},
+ "target_nic_tags": {"key": "targetNicTags", "type": "[UserCreatedResourceTag]"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
+ "target_vm_security_profile": {"key": "targetVmSecurityProfile", "type": "SecurityProfileProperties"},
}
- def __init__(
+ def __init__( # pylint: disable=too-many-locals
self,
*,
fabric_discovery_machine_id: str,
@@ -14211,6 +15924,14 @@ def __init__(
target_boot_diagnostics_storage_account_id: Optional[str] = None,
run_as_account_id: Optional[str] = None,
multi_vm_group_name: Optional[str] = None,
+ sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
+ target_vm_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ seed_managed_disk_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_managed_disk_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_nic_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ user_selected_os_name: Optional[str] = None,
+ target_vm_security_profile: Optional["_models.SecurityProfileProperties"] = None,
**kwargs: Any
) -> None:
"""
@@ -14254,6 +15975,31 @@ def __init__(
:paramtype process_server_id: str
:keyword multi_vm_group_name: The multi VM group name.
:paramtype multi_vm_group_name: str
+ :keyword sql_server_license_type: The SQL Server license type. Known values are:
+ "NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
+ :paramtype sql_server_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :keyword target_vm_tags: The target VM tags.
+ :paramtype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword seed_managed_disk_tags: The tags for the seed managed disks.
+ :paramtype seed_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_managed_disk_tags: The tags for the target managed disks.
+ :paramtype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_nic_tags: The tags for the target NICs.
+ :paramtype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
+ :keyword target_vm_security_profile: The target VM security profile.
+ :paramtype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
super().__init__(**kwargs)
self.instance_type: str = "InMageRcm"
@@ -14275,6 +16021,14 @@ def __init__(
self.run_as_account_id = run_as_account_id
self.process_server_id = process_server_id
self.multi_vm_group_name = multi_vm_group_name
+ self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
+ self.target_vm_tags = target_vm_tags
+ self.seed_managed_disk_tags = seed_managed_disk_tags
+ self.target_managed_disk_tags = target_managed_disk_tags
+ self.target_nic_tags = target_nic_tags
+ self.user_selected_os_name = user_selected_os_name
+ self.target_vm_security_profile = target_vm_security_profile
class InMageRcmEventDetails(EventProviderSpecificDetails):
@@ -14282,7 +16036,7 @@ class InMageRcmEventDetails(EventProviderSpecificDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -14345,7 +16099,7 @@ def __init__(self, **kwargs: Any) -> None:
class InMageRcmFabricCreationInput(FabricSpecificCreationInput):
"""InMageRcm fabric provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Required.
:vartype instance_type: str
@@ -14398,12 +16152,12 @@ def __init__(
self.source_agent_identity = source_agent_identity
-class InMageRcmFabricSpecificDetails(FabricSpecificDetails): # pylint: disable=too-many-instance-attributes
+class InMageRcmFabricSpecificDetails(FabricSpecificDetails):
"""InMageRcm fabric specific details.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -14513,7 +16267,7 @@ def __init__(
self.agent_details = None
-class InMageRcmFabricSwitchProviderBlockingErrorDetails(_serialization.Model):
+class InMageRcmFabricSwitchProviderBlockingErrorDetails(_serialization.Model): # pylint: disable=name-too-long
"""InMageRcmFabric switch provider blocking error details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -14561,9 +16315,7 @@ def __init__(self, **kwargs: Any) -> None:
self.error_tags = None
-class InMageRcmFailbackDiscoveredProtectedVmDetails(
- _serialization.Model
-): # pylint: disable=too-many-instance-attributes
+class InMageRcmFailbackDiscoveredProtectedVmDetails(_serialization.Model): # pylint: disable=name-too-long
"""InMageRcmFailback discovered VM details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -14646,7 +16398,7 @@ class InMageRcmFailbackEventDetails(EventProviderSpecificDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -14794,10 +16546,12 @@ def __init__(self, **kwargs: Any) -> None:
self.source_ip_address = None
-class InMageRcmFailbackPlannedFailoverProviderInput(PlannedFailoverProviderSpecificFailoverInput):
+class InMageRcmFailbackPlannedFailoverProviderInput(
+ PlannedFailoverProviderSpecificFailoverInput
+): # pylint: disable=name-too-long
"""Provider specific input for InMageRcmFailback failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -14834,7 +16588,7 @@ def __init__(
class InMageRcmFailbackPolicyCreationInput(PolicyProviderSpecificInput):
"""InMageRcmFailback policy creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -14879,7 +16633,7 @@ def __init__(
class InMageRcmFailbackPolicyDetails(PolicyProviderSpecificDetails):
"""InMageRcm failback specific policy details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -14920,7 +16674,7 @@ def __init__(
self.crash_consistent_frequency_in_minutes = crash_consistent_frequency_in_minutes
-class InMageRcmFailbackProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageRcmFailbackProtectedDiskDetails(_serialization.Model):
"""InMageRcmFailback protected disk details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -15007,14 +16761,12 @@ def __init__(
self.last_sync_time = None
-class InMageRcmFailbackReplicationDetails(
- ReplicationProviderSpecificSettings
-): # pylint: disable=too-many-instance-attributes
+class InMageRcmFailbackReplicationDetails(ReplicationProviderSpecificSettings):
"""InMageRcmFailback provider specific details.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -15221,7 +16973,7 @@ def __init__( # pylint: disable=too-many-locals
class InMageRcmFailbackReprotectInput(ReverseReplicationProviderSpecificInput):
"""InMageRcmFailback specific provider input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -15445,7 +17197,7 @@ def __init__(self, **kwargs: Any) -> None:
self.is_upgradeable = None
-class InMageRcmNicDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageRcmNicDetails(_serialization.Model):
"""InMageRcm NIC details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -15481,6 +17233,8 @@ class InMageRcmNicDetails(_serialization.Model): # pylint: disable=too-many-ins
:ivar test_ip_address_type: The test IP address type. Known values are: "Dynamic" and "Static".
:vartype test_ip_address_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.EthernetAddressType
+ :ivar target_nic_name: The target NIC name.
+ :vartype target_nic_name: str
"""
_validation = {
@@ -15505,6 +17259,7 @@ class InMageRcmNicDetails(_serialization.Model): # pylint: disable=too-many-ins
"test_subnet_name": {"key": "testSubnetName", "type": "str"},
"test_ip_address": {"key": "testIPAddress", "type": "str"},
"test_ip_address_type": {"key": "testIPAddressType", "type": "str"},
+ "target_nic_name": {"key": "targetNicName", "type": "str"},
}
def __init__(
@@ -15518,6 +17273,7 @@ def __init__(
test_subnet_name: Optional[str] = None,
test_ip_address: Optional[str] = None,
test_ip_address_type: Optional[Union[str, "_models.EthernetAddressType"]] = None,
+ target_nic_name: Optional[str] = None,
**kwargs: Any
) -> None:
"""
@@ -15542,6 +17298,8 @@ def __init__(
"Static".
:paramtype test_ip_address_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.EthernetAddressType
+ :keyword target_nic_name: The target NIC name.
+ :paramtype target_nic_name: str
"""
super().__init__(**kwargs)
self.nic_id = None
@@ -15557,12 +17315,13 @@ def __init__(
self.test_subnet_name = test_subnet_name
self.test_ip_address = test_ip_address
self.test_ip_address_type = test_ip_address_type
+ self.target_nic_name = target_nic_name
class InMageRcmNicInput(_serialization.Model):
"""InMageRcm NIC input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar nic_id: The NIC Id. Required.
:vartype nic_id: str
@@ -15578,6 +17337,8 @@ class InMageRcmNicInput(_serialization.Model):
:vartype test_subnet_name: str
:ivar test_static_ip_address: The test static IP address.
:vartype test_static_ip_address: str
+ :ivar target_nic_name: The target NIC name.
+ :vartype target_nic_name: str
"""
_validation = {
@@ -15593,6 +17354,7 @@ class InMageRcmNicInput(_serialization.Model):
"target_static_ip_address": {"key": "targetStaticIPAddress", "type": "str"},
"test_subnet_name": {"key": "testSubnetName", "type": "str"},
"test_static_ip_address": {"key": "testStaticIPAddress", "type": "str"},
+ "target_nic_name": {"key": "targetNicName", "type": "str"},
}
def __init__(
@@ -15605,6 +17367,7 @@ def __init__(
target_static_ip_address: Optional[str] = None,
test_subnet_name: Optional[str] = None,
test_static_ip_address: Optional[str] = None,
+ target_nic_name: Optional[str] = None,
**kwargs: Any
) -> None:
"""
@@ -15623,6 +17386,8 @@ def __init__(
:paramtype test_subnet_name: str
:keyword test_static_ip_address: The test static IP address.
:paramtype test_static_ip_address: str
+ :keyword target_nic_name: The target NIC name.
+ :paramtype target_nic_name: str
"""
super().__init__(**kwargs)
self.nic_id = nic_id
@@ -15632,12 +17397,13 @@ def __init__(
self.target_static_ip_address = target_static_ip_address
self.test_subnet_name = test_subnet_name
self.test_static_ip_address = test_static_ip_address
+ self.target_nic_name = target_nic_name
class InMageRcmPolicyCreationInput(PolicyProviderSpecificInput):
"""InMageRcm policy creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -15698,7 +17464,7 @@ def __init__(
class InMageRcmPolicyDetails(PolicyProviderSpecificDetails):
"""InMageRcm specific policy details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -15755,7 +17521,7 @@ def __init__(
self.enable_multi_vm_sync = enable_multi_vm_sync
-class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InMageRcmProtectedDiskDetails(_serialization.Model):
"""InMageRcm protected disk details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -15768,6 +17534,9 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
:vartype is_os_disk: str
:ivar capacity_in_bytes: The disk capacity in bytes.
:vartype capacity_in_bytes: int
+ :ivar disk_state: The disk state. Known values are: "Unavailable", "InitialReplicationPending",
+ "InitialReplicationFailed", and "Protected".
+ :vartype disk_state: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskState
:ivar log_storage_account_id: The log storage account ARM Id.
:vartype log_storage_account_id: str
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM Id.
@@ -15778,8 +17547,8 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
:vartype seed_blob_uri: str
:ivar target_managed_disk_id: The ARM Id of the target managed disk.
:vartype target_managed_disk_id: str
- :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar data_pending_in_log_data_store_in_mb: The data pending in log data store in MB.
:vartype data_pending_in_log_data_store_in_mb: float
@@ -15792,6 +17561,16 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
:vartype ir_details: ~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmSyncDetails
:ivar resync_details: The resync details.
:vartype resync_details: ~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmSyncDetails
+ :ivar custom_target_disk_name: The custom target Azure disk name.
+ :vartype custom_target_disk_name: str
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -15799,6 +17578,7 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
"disk_name": {"readonly": True},
"is_os_disk": {"readonly": True},
"capacity_in_bytes": {"readonly": True},
+ "disk_state": {"readonly": True},
"log_storage_account_id": {"readonly": True},
"disk_encryption_set_id": {"readonly": True},
"seed_managed_disk_id": {"readonly": True},
@@ -15814,6 +17594,7 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
"disk_name": {"key": "diskName", "type": "str"},
"is_os_disk": {"key": "isOSDisk", "type": "str"},
"capacity_in_bytes": {"key": "capacityInBytes", "type": "int"},
+ "disk_state": {"key": "diskState", "type": "str"},
"log_storage_account_id": {"key": "logStorageAccountId", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
"seed_managed_disk_id": {"key": "seedManagedDiskId", "type": "str"},
@@ -15825,6 +17606,11 @@ class InMageRcmProtectedDiskDetails(_serialization.Model): # pylint: disable=to
"is_initial_replication_complete": {"key": "isInitialReplicationComplete", "type": "str"},
"ir_details": {"key": "irDetails", "type": "InMageRcmSyncDetails"},
"resync_details": {"key": "resyncDetails", "type": "InMageRcmSyncDetails"},
+ "custom_target_disk_name": {"key": "customTargetDiskName", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -15833,22 +17619,38 @@ def __init__(
disk_type: Optional[Union[str, "_models.DiskAccountType"]] = None,
ir_details: Optional["_models.InMageRcmSyncDetails"] = None,
resync_details: Optional["_models.InMageRcmSyncDetails"] = None,
+ custom_target_disk_name: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
- :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword ir_details: The initial replication details.
:paramtype ir_details: ~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmSyncDetails
:keyword resync_details: The resync details.
:paramtype resync_details: ~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmSyncDetails
+ :keyword custom_target_disk_name: The custom target Azure disk name.
+ :paramtype custom_target_disk_name: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = None
self.disk_name = None
self.is_os_disk = None
self.capacity_in_bytes = None
+ self.disk_state = None
self.log_storage_account_id = None
self.disk_encryption_set_id = None
self.seed_managed_disk_id = None
@@ -15860,14 +17662,21 @@ def __init__(
self.is_initial_replication_complete = None
self.ir_details = ir_details
self.resync_details = resync_details
+ self.custom_target_disk_name = custom_target_disk_name
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class InMageRcmProtectionContainerMappingDetails(ProtectionContainerMappingProviderSpecificDetails):
+class InMageRcmProtectionContainerMappingDetails(
+ ProtectionContainerMappingProviderSpecificDetails
+): # pylint: disable=name-too-long
"""InMageRcm provider specific container mapping details.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -15898,7 +17707,7 @@ class InMageRcmRecoveryPointDetails(ProviderSpecificRecoveryPointDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the provider type. Required.
:vartype instance_type: str
@@ -15924,12 +17733,12 @@ def __init__(self, **kwargs: Any) -> None:
self.is_multi_vm_sync_point = None
-class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylint: disable=too-many-instance-attributes
+class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings):
"""InMageRcm provider specific details.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -15961,6 +17770,10 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
:vartype target_generation: str
:ivar license_type: License Type of the VM to be used.
:vartype license_type: str
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:ivar storage_account_id: The replication storage account ARM Id. This is applicable only for
the blob based replication test hook.
:vartype storage_account_id: str
@@ -16040,6 +17853,9 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
:ivar protected_disks: The list of protected disks.
:vartype protected_disks:
list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmProtectedDiskDetails]
+ :ivar unprotected_disks: The list of unprotected disks.
+ :vartype unprotected_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmUnProtectedDiskDetails]
:ivar is_last_upgrade_successful: A value indicating whether last agent upgrade was successful
or not.
:vartype is_last_upgrade_successful: str
@@ -16060,6 +17876,27 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
:ivar discovered_vm_details: The discovered VM details.
:vartype discovered_vm_details:
~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmDiscoveredProtectedVmDetails
+ :ivar target_vm_tags: The target VM tags.
+ :vartype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar seed_managed_disk_tags: The tags for the seed managed disks.
+ :vartype seed_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_managed_disk_tags: The tags for the target managed disks.
+ :vartype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_nic_tags: The tags for the target NICs.
+ :vartype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar sql_server_license_type: The SQL Server license type.
+ :vartype sql_server_license_type: str
+ :ivar supported_os_versions: A value indicating the inplace OS Upgrade version.
+ :vartype supported_os_versions: list[str]
+ :ivar os_name: The OS name associated with VM.
+ :vartype os_name: str
+ :ivar target_vm_security_profile: The target VM security profile.
+ :vartype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
_validation = {
@@ -16117,6 +17954,7 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
"primary_nic_ip_address": {"key": "primaryNicIpAddress", "type": "str"},
"target_generation": {"key": "targetGeneration", "type": "str"},
"license_type": {"key": "licenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
"storage_account_id": {"key": "storageAccountId", "type": "str"},
"target_vm_name": {"key": "targetVmName", "type": "str"},
"target_vm_size": {"key": "targetVmSize", "type": "str"},
@@ -16148,6 +17986,7 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
"agent_upgrade_job_id": {"key": "agentUpgradeJobId", "type": "str"},
"agent_upgrade_attempt_to_version": {"key": "agentUpgradeAttemptToVersion", "type": "str"},
"protected_disks": {"key": "protectedDisks", "type": "[InMageRcmProtectedDiskDetails]"},
+ "unprotected_disks": {"key": "unprotectedDisks", "type": "[InMageRcmUnProtectedDiskDetails]"},
"is_last_upgrade_successful": {"key": "isLastUpgradeSuccessful", "type": "str"},
"is_agent_registration_successful_after_failover": {
"key": "isAgentRegistrationSuccessfulAfterFailover",
@@ -16164,12 +18003,21 @@ class InMageRcmReplicationDetails(ReplicationProviderSpecificSettings): # pylin
},
"vm_nics": {"key": "vmNics", "type": "[InMageRcmNicDetails]"},
"discovered_vm_details": {"key": "discoveredVmDetails", "type": "InMageRcmDiscoveredProtectedVmDetails"},
+ "target_vm_tags": {"key": "targetVmTags", "type": "[UserCreatedResourceTag]"},
+ "seed_managed_disk_tags": {"key": "seedManagedDiskTags", "type": "[UserCreatedResourceTag]"},
+ "target_managed_disk_tags": {"key": "targetManagedDiskTags", "type": "[UserCreatedResourceTag]"},
+ "target_nic_tags": {"key": "targetNicTags", "type": "[UserCreatedResourceTag]"},
+ "sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "supported_os_versions": {"key": "supportedOSVersions", "type": "[str]"},
+ "os_name": {"key": "osName", "type": "str"},
+ "target_vm_security_profile": {"key": "targetVmSecurityProfile", "type": "SecurityProfileProperties"},
}
def __init__( # pylint: disable=too-many-locals
self,
*,
license_type: Optional[str] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
target_vm_name: Optional[str] = None,
target_vm_size: Optional[str] = None,
target_resource_group_id: Optional[str] = None,
@@ -16181,6 +18029,7 @@ def __init__( # pylint: disable=too-many-locals
target_network_id: Optional[str] = None,
test_network_id: Optional[str] = None,
protected_disks: Optional[List["_models.InMageRcmProtectedDiskDetails"]] = None,
+ unprotected_disks: Optional[List["_models.InMageRcmUnProtectedDiskDetails"]] = None,
mobility_agent_details: Optional["_models.InMageRcmMobilityAgentDetails"] = None,
last_agent_upgrade_error_details: Optional[List["_models.InMageRcmLastAgentUpgradeErrorDetails"]] = None,
agent_upgrade_blocking_error_details: Optional[
@@ -16188,11 +18037,23 @@ def __init__( # pylint: disable=too-many-locals
] = None,
vm_nics: Optional[List["_models.InMageRcmNicDetails"]] = None,
discovered_vm_details: Optional["_models.InMageRcmDiscoveredProtectedVmDetails"] = None,
+ target_vm_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ seed_managed_disk_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_managed_disk_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_nic_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ sql_server_license_type: Optional[str] = None,
+ supported_os_versions: Optional[List[str]] = None,
+ os_name: Optional[str] = None,
+ target_vm_security_profile: Optional["_models.SecurityProfileProperties"] = None,
**kwargs: Any
) -> None:
"""
:keyword license_type: License Type of the VM to be used.
:paramtype license_type: str
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:keyword target_vm_name: Target VM name.
:paramtype target_vm_name: str
:keyword target_vm_size: The target VM size.
@@ -16217,6 +18078,9 @@ def __init__( # pylint: disable=too-many-locals
:keyword protected_disks: The list of protected disks.
:paramtype protected_disks:
list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmProtectedDiskDetails]
+ :keyword unprotected_disks: The list of unprotected disks.
+ :paramtype unprotected_disks:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmUnProtectedDiskDetails]
:keyword mobility_agent_details: The mobility agent information.
:paramtype mobility_agent_details:
~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmMobilityAgentDetails
@@ -16231,6 +18095,27 @@ def __init__( # pylint: disable=too-many-locals
:keyword discovered_vm_details: The discovered VM details.
:paramtype discovered_vm_details:
~azure.mgmt.recoveryservicessiterecovery.models.InMageRcmDiscoveredProtectedVmDetails
+ :keyword target_vm_tags: The target VM tags.
+ :paramtype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword seed_managed_disk_tags: The tags for the seed managed disks.
+ :paramtype seed_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_managed_disk_tags: The tags for the target managed disks.
+ :paramtype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_nic_tags: The tags for the target NICs.
+ :paramtype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword sql_server_license_type: The SQL Server license type.
+ :paramtype sql_server_license_type: str
+ :keyword supported_os_versions: A value indicating the inplace OS Upgrade version.
+ :paramtype supported_os_versions: list[str]
+ :keyword os_name: The OS name associated with VM.
+ :paramtype os_name: str
+ :keyword target_vm_security_profile: The target VM security profile.
+ :paramtype target_vm_security_profile:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityProfileProperties
"""
super().__init__(**kwargs)
self.instance_type: str = "InMageRcm"
@@ -16248,6 +18133,7 @@ def __init__( # pylint: disable=too-many-locals
self.primary_nic_ip_address = None
self.target_generation = None
self.license_type = license_type
+ self.linux_license_type = linux_license_type
self.storage_account_id = None
self.target_vm_name = target_vm_name
self.target_vm_size = target_vm_size
@@ -16279,6 +18165,7 @@ def __init__( # pylint: disable=too-many-locals
self.agent_upgrade_job_id = None
self.agent_upgrade_attempt_to_version = None
self.protected_disks = protected_disks
+ self.unprotected_disks = unprotected_disks
self.is_last_upgrade_successful = None
self.is_agent_registration_successful_after_failover = None
self.mobility_agent_details = mobility_agent_details
@@ -16286,12 +18173,20 @@ def __init__( # pylint: disable=too-many-locals
self.agent_upgrade_blocking_error_details = agent_upgrade_blocking_error_details
self.vm_nics = vm_nics
self.discovered_vm_details = discovered_vm_details
+ self.target_vm_tags = target_vm_tags
+ self.seed_managed_disk_tags = seed_managed_disk_tags
+ self.target_managed_disk_tags = target_managed_disk_tags
+ self.target_nic_tags = target_nic_tags
+ self.sql_server_license_type = sql_server_license_type
+ self.supported_os_versions = supported_os_versions
+ self.os_name = os_name
+ self.target_vm_security_profile = target_vm_security_profile
class InMageRcmReprotectInput(ReverseReplicationProviderSpecificInput):
"""InMageRcm specific provider input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16413,7 +18308,7 @@ def __init__(self, **kwargs: Any) -> None:
class InMageRcmTestFailoverInput(TestFailoverProviderSpecificInput):
"""InMageRcm provider specific input for test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16422,6 +18317,8 @@ class InMageRcmTestFailoverInput(TestFailoverProviderSpecificInput):
:ivar recovery_point_id: The recovery point id to be passed to test failover to a particular
recovery point. In case of latest recovery point, null should be passed.
:vartype recovery_point_id: str
+ :ivar os_upgrade_version: A value indicating the inplace OS Upgrade version.
+ :vartype os_upgrade_version: str
"""
_validation = {
@@ -16432,10 +18329,16 @@ class InMageRcmTestFailoverInput(TestFailoverProviderSpecificInput):
"instance_type": {"key": "instanceType", "type": "str"},
"network_id": {"key": "networkId", "type": "str"},
"recovery_point_id": {"key": "recoveryPointId", "type": "str"},
+ "os_upgrade_version": {"key": "osUpgradeVersion", "type": "str"},
}
def __init__(
- self, *, network_id: Optional[str] = None, recovery_point_id: Optional[str] = None, **kwargs: Any
+ self,
+ *,
+ network_id: Optional[str] = None,
+ recovery_point_id: Optional[str] = None,
+ os_upgrade_version: Optional[str] = None,
+ **kwargs: Any
) -> None:
"""
:keyword network_id: The test network Id.
@@ -16443,17 +18346,20 @@ def __init__(
:keyword recovery_point_id: The recovery point id to be passed to test failover to a particular
recovery point. In case of latest recovery point, null should be passed.
:paramtype recovery_point_id: str
+ :keyword os_upgrade_version: A value indicating the inplace OS Upgrade version.
+ :paramtype os_upgrade_version: str
"""
super().__init__(**kwargs)
self.instance_type: str = "InMageRcm"
self.network_id = network_id
self.recovery_point_id = recovery_point_id
+ self.os_upgrade_version = os_upgrade_version
class InMageRcmUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
"""InMageRcm provider specific input for unplanned failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16462,6 +18368,8 @@ class InMageRcmUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
:ivar recovery_point_id: The recovery point id to be passed to failover to a particular
recovery point. In case of latest recovery point, null should be passed.
:vartype recovery_point_id: str
+ :ivar os_upgrade_version: A value indicating the inplace OS Upgrade version.
+ :vartype os_upgrade_version: str
"""
_validation = {
@@ -16473,29 +18381,75 @@ class InMageRcmUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
"instance_type": {"key": "instanceType", "type": "str"},
"perform_shutdown": {"key": "performShutdown", "type": "str"},
"recovery_point_id": {"key": "recoveryPointId", "type": "str"},
+ "os_upgrade_version": {"key": "osUpgradeVersion", "type": "str"},
}
- def __init__(self, *, perform_shutdown: str, recovery_point_id: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ perform_shutdown: str,
+ recovery_point_id: Optional[str] = None,
+ os_upgrade_version: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
"""
:keyword perform_shutdown: A value indicating whether VM is to be shutdown. Required.
:paramtype perform_shutdown: str
:keyword recovery_point_id: The recovery point id to be passed to failover to a particular
recovery point. In case of latest recovery point, null should be passed.
:paramtype recovery_point_id: str
+ :keyword os_upgrade_version: A value indicating the inplace OS Upgrade version.
+ :paramtype os_upgrade_version: str
"""
super().__init__(**kwargs)
self.instance_type: str = "InMageRcm"
self.perform_shutdown = perform_shutdown
self.recovery_point_id = recovery_point_id
+ self.os_upgrade_version = os_upgrade_version
+
+
+class InMageRcmUnProtectedDiskDetails(_serialization.Model):
+ """InMageRcm un-protected disk details.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar disk_id: The disk Id.
+ :vartype disk_id: str
+ :ivar disk_name: The disk name.
+ :vartype disk_name: str
+ :ivar capacity_in_bytes: The disk capacity in bytes.
+ :vartype capacity_in_bytes: int
+ """
+
+ _validation = {
+ "disk_id": {"readonly": True},
+ "disk_name": {"readonly": True},
+ "capacity_in_bytes": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "disk_id": {"key": "diskId", "type": "str"},
+ "disk_name": {"key": "diskName", "type": "str"},
+ "capacity_in_bytes": {"key": "capacityInBytes", "type": "int"},
+ }
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.disk_id = None
+ self.disk_name = None
+ self.capacity_in_bytes = None
-class UpdateApplianceForReplicationProtectedItemProviderSpecificInput(_serialization.Model):
+
+class UpdateApplianceForReplicationProtectedItemProviderSpecificInput(
+ _serialization.Model
+): # pylint: disable=name-too-long
"""Update replication protected item provider specific input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
InMageRcmUpdateApplianceForReplicationProtectedItemInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16519,10 +18473,10 @@ def __init__(self, **kwargs: Any) -> None:
class InMageRcmUpdateApplianceForReplicationProtectedItemInput(
UpdateApplianceForReplicationProtectedItemProviderSpecificInput
-):
+): # pylint: disable=name-too-long
"""InMageRcm provider specific input to update appliance for replication protected item.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16552,7 +18506,7 @@ def __init__(self, *, run_as_account_id: Optional[str] = None, **kwargs: Any) ->
class InMageRcmUpdateContainerMappingInput(ReplicationProviderSpecificUpdateContainerMappingInput):
"""InMageRcm update protection container mapping.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16584,10 +18538,10 @@ def __init__(self, *, enable_agent_auto_upgrade: str, **kwargs: Any) -> None:
class InMageRcmUpdateReplicationProtectedItemInput(
UpdateReplicationProtectedItemProviderInput
-): # pylint: disable=too-many-instance-attributes
+): # pylint: disable=name-too-long
"""InMageRcm provider specific input to update replication protected item.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -16615,6 +18569,25 @@ class InMageRcmUpdateReplicationProtectedItemInput(
:ivar license_type: The license type. Known values are: "NotSpecified", "NoLicenseType", and
"WindowsServer".
:vartype license_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.LicenseType
+ :ivar sql_server_license_type: The SQL Server license type. Known values are: "NotSpecified",
+ "NoLicenseType", "PAYG", and "AHUB".
+ :vartype sql_server_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
+ :ivar target_vm_tags: The target VM tags.
+ :vartype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_managed_disk_tags: The tags for the target managed disks.
+ :vartype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :ivar target_nic_tags: The tags for the target NICs.
+ :vartype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
"""
_validation = {
@@ -16634,6 +18607,12 @@ class InMageRcmUpdateReplicationProtectedItemInput(
"test_network_id": {"key": "testNetworkId", "type": "str"},
"vm_nics": {"key": "vmNics", "type": "[InMageRcmNicInput]"},
"license_type": {"key": "licenseType", "type": "str"},
+ "sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
+ "target_vm_tags": {"key": "targetVmTags", "type": "[UserCreatedResourceTag]"},
+ "target_managed_disk_tags": {"key": "targetManagedDiskTags", "type": "[UserCreatedResourceTag]"},
+ "target_nic_tags": {"key": "targetNicTags", "type": "[UserCreatedResourceTag]"},
}
def __init__(
@@ -16650,6 +18629,12 @@ def __init__(
test_network_id: Optional[str] = None,
vm_nics: Optional[List["_models.InMageRcmNicInput"]] = None,
license_type: Optional[Union[str, "_models.LicenseType"]] = None,
+ sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
+ user_selected_os_name: Optional[str] = None,
+ target_vm_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_managed_disk_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
+ target_nic_tags: Optional[List["_models.UserCreatedResourceTag"]] = None,
**kwargs: Any
) -> None:
"""
@@ -16677,6 +18662,25 @@ def __init__(
:keyword license_type: The license type. Known values are: "NotSpecified", "NoLicenseType", and
"WindowsServer".
:paramtype license_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.LicenseType
+ :keyword sql_server_license_type: The SQL Server license type. Known values are:
+ "NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
+ :paramtype sql_server_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
+ :keyword target_vm_tags: The target VM tags.
+ :paramtype target_vm_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_managed_disk_tags: The tags for the target managed disks.
+ :paramtype target_managed_disk_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
+ :keyword target_nic_tags: The tags for the target NICs.
+ :paramtype target_nic_tags:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.UserCreatedResourceTag]
"""
super().__init__(**kwargs)
self.instance_type: str = "InMageRcm"
@@ -16691,12 +18695,18 @@ def __init__(
self.test_network_id = test_network_id
self.vm_nics = vm_nics
self.license_type = license_type
+ self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
+ self.user_selected_os_name = user_selected_os_name
+ self.target_vm_tags = target_vm_tags
+ self.target_managed_disk_tags = target_managed_disk_tags
+ self.target_nic_tags = target_nic_tags
-class InMageReplicationDetails(ReplicationProviderSpecificSettings): # pylint: disable=too-many-instance-attributes
+class InMageReplicationDetails(ReplicationProviderSpecificSettings):
"""InMage provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -17024,7 +19034,7 @@ def __init__( # pylint: disable=too-many-locals
class InMageReprotectInput(ReverseReplicationProviderSpecificInput):
"""InMageAzureV2 specific provider input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -17114,7 +19124,7 @@ def __init__(
class InMageTestFailoverInput(TestFailoverProviderSpecificInput):
"""Provider specific input for InMage test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -17166,7 +19176,7 @@ def __init__(
class InMageUnplannedFailoverInput(UnplannedFailoverProviderSpecificInput):
"""Provider specific input for InMage unplanned failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -17250,7 +19260,7 @@ def __init__(
self.only_exclude_if_single_volume = only_exclude_if_single_volume
-class InnerHealthError(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class InnerHealthError(_serialization.Model):
"""Implements InnerHealthError class. HealthError object has a list of InnerHealthErrors as child
errors. InnerHealthError is used because this will prevent an infinite loop of structures when
Hydra tries to auto-generate the contract. We are exposing the related health errors as inner
@@ -17420,7 +19430,7 @@ def __init__(
self.protocol = protocol
-class IPConfigDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class IPConfigDetails(_serialization.Model):
"""IPConfigDetails.
:ivar name:
@@ -17543,7 +19553,7 @@ def __init__(
self.tfo_lb_backend_address_pool_ids = tfo_lb_backend_address_pool_ids
-class IPConfigInputDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class IPConfigInputDetails(_serialization.Model):
"""IPConfigInputDetails.
:ivar ip_config_name:
@@ -17824,7 +19834,7 @@ def __init__(
self.task_id = task_id
-class JobProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class JobProperties(_serialization.Model):
"""Job custom data details.
:ivar activity_id: The activity id.
@@ -18027,7 +20037,7 @@ def __init__(
class JobStatusEventDetails(EventSpecificDetails):
"""Model class for event details of a job status event.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -18236,10 +20246,50 @@ def __init__(
self.logical_network_definitions_status = logical_network_definitions_status
+class ManagedRunCommandScriptInput(_serialization.Model):
+ """Managed RunCommand script input.
+
+ All required parameters must be populated in order to send to server.
+
+ :ivar step_name: The step name. Required.
+ :vartype step_name: str
+ :ivar script_url: The script url. Required.
+ :vartype script_url: str
+ :ivar script_parameters: The script parameters. Required.
+ :vartype script_parameters: str
+ """
+
+ _validation = {
+ "step_name": {"required": True},
+ "script_url": {"required": True},
+ "script_parameters": {"required": True},
+ }
+
+ _attribute_map = {
+ "step_name": {"key": "stepName", "type": "str"},
+ "script_url": {"key": "scriptUrl", "type": "str"},
+ "script_parameters": {"key": "scriptParameters", "type": "str"},
+ }
+
+ def __init__(self, *, step_name: str, script_url: str, script_parameters: str, **kwargs: Any) -> None:
+ """
+ :keyword step_name: The step name. Required.
+ :paramtype step_name: str
+ :keyword script_url: The script url. Required.
+ :paramtype script_url: str
+ :keyword script_parameters: The script parameters. Required.
+ :paramtype script_parameters: str
+ """
+ super().__init__(**kwargs)
+ self.step_name = step_name
+ self.script_url = script_url
+ self.script_parameters = script_parameters
+
+
class ManualActionTaskDetails(TaskTypeDetails):
"""This class represents the manual action task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -18349,7 +20399,7 @@ def __init__(self, **kwargs: Any) -> None:
self.health_errors = None
-class MasterTargetServer(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class MasterTargetServer(_serialization.Model):
"""Details of a Master Target Server.
:ivar id: The server Id.
@@ -18501,7 +20551,7 @@ def __init__(
class MigrateInput(_serialization.Model):
"""Input for migrate.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Migrate input properties. Required.
:vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.MigrateInputProperties
@@ -18527,7 +20577,7 @@ def __init__(self, *, properties: "_models.MigrateInputProperties", **kwargs: An
class MigrateInputProperties(_serialization.Model):
"""Migrate input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar provider_specific_details: The provider specific details. Required.
:vartype provider_specific_details:
@@ -18558,7 +20608,7 @@ class MigrateProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtMigrateInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -18656,7 +20706,7 @@ def __init__(
self.next_link = next_link
-class MigrationItemProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class MigrationItemProperties(_serialization.Model):
"""Migration item properties.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -18838,7 +20888,7 @@ class MigrationProviderSpecificSettings(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtMigrationDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the instance type. Required.
:vartype instance_type: str
@@ -19298,7 +21348,7 @@ def __init__(
class NewProtectionProfile(ProtectionProfileCustomDetails):
"""New Protection profile input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -19372,7 +21422,7 @@ def __init__(
class NewRecoveryVirtualNetwork(RecoveryVirtualNetworkCustomDetails):
"""Recovery virtual network input to create new virtual network from given source network.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar resource_type: The class type. Required.
:vartype resource_type: str
@@ -19537,6 +21587,8 @@ class OSDetails(_serialization.Model):
:vartype o_s_major_version: str
:ivar o_s_minor_version: The OS Minor Version.
:vartype o_s_minor_version: str
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
"""
_attribute_map = {
@@ -19546,6 +21598,7 @@ class OSDetails(_serialization.Model):
"o_s_version": {"key": "oSVersion", "type": "str"},
"o_s_major_version": {"key": "oSMajorVersion", "type": "str"},
"o_s_minor_version": {"key": "oSMinorVersion", "type": "str"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
}
def __init__(
@@ -19557,6 +21610,7 @@ def __init__(
o_s_version: Optional[str] = None,
o_s_major_version: Optional[str] = None,
o_s_minor_version: Optional[str] = None,
+ user_selected_os_name: Optional[str] = None,
**kwargs: Any
) -> None:
"""
@@ -19572,6 +21626,8 @@ def __init__(
:paramtype o_s_major_version: str
:keyword o_s_minor_version: The OS Minor Version.
:paramtype o_s_minor_version: str
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
"""
super().__init__(**kwargs)
self.os_type = os_type
@@ -19580,6 +21636,7 @@ def __init__(
self.o_s_version = o_s_version
self.o_s_major_version = o_s_major_version
self.o_s_minor_version = o_s_minor_version
+ self.user_selected_os_name = user_selected_os_name
class OSDiskDetails(_serialization.Model):
@@ -19678,7 +21735,7 @@ def __init__(self, *, version: Optional[str] = None, service_pack: Optional[str]
class PauseReplicationInput(_serialization.Model):
"""Pause replication input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Pause replication input properties. Required.
:vartype properties:
@@ -19706,7 +21763,7 @@ def __init__(self, *, properties: "_models.PauseReplicationInputProperties", **k
class PauseReplicationInputProperties(_serialization.Model):
"""Pause replication input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -19894,7 +21951,7 @@ def __init__(
self.provider_specific_details = provider_specific_details
-class ProcessServer(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class ProcessServer(_serialization.Model):
"""Details of the Process Server.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -20161,7 +22218,7 @@ def __init__( # pylint: disable=too-many-locals
self.mars_registration_status = None
-class ProcessServerDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class ProcessServerDetails(_serialization.Model):
"""Process server details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -20771,7 +22828,7 @@ def __init__(
self.next_link = next_link
-class ProtectionContainerMappingProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class ProtectionContainerMappingProperties(_serialization.Model):
"""Protection container mapping properties.
:ivar target_protection_container_id: Paired protection container ARM ID.
@@ -21183,7 +23240,7 @@ class RecoveryPlanProviderSpecificDetails(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
RecoveryPlanA2ADetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -21208,7 +23265,7 @@ def __init__(self, **kwargs: Any) -> None:
class RecoveryPlanA2ADetails(RecoveryPlanProviderSpecificDetails):
"""Recovery plan A2A specific details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -21265,7 +23322,7 @@ def __init__(
self.recovery_extended_location = recovery_extended_location
-class RecoveryPlanProviderSpecificFailoverInput(_serialization.Model):
+class RecoveryPlanProviderSpecificFailoverInput(_serialization.Model): # pylint: disable=name-too-long
"""Recovery plan provider specific failover input.
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
@@ -21274,7 +23331,7 @@ class RecoveryPlanProviderSpecificFailoverInput(_serialization.Model):
RecoveryPlanInMageAzureV2FailoverInput, RecoveryPlanInMageRcmFailoverInput,
RecoveryPlanInMageRcmFailbackFailoverInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21309,7 +23366,7 @@ def __init__(self, **kwargs: Any) -> None:
class RecoveryPlanA2AFailoverInput(RecoveryPlanProviderSpecificFailoverInput):
"""Recovery plan A2A failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21374,7 +23431,7 @@ class RecoveryPlanProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
RecoveryPlanA2AInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -21399,7 +23456,7 @@ def __init__(self, **kwargs: Any) -> None:
class RecoveryPlanA2AInput(RecoveryPlanProviderSpecificInput):
"""Recovery plan A2A input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -21459,7 +23516,7 @@ def __init__(
class RecoveryPlanAction(_serialization.Model):
"""Recovery plan action details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar action_name: The action name. Required.
:vartype action_name: str
@@ -21524,7 +23581,7 @@ class RecoveryPlanActionDetails(_serialization.Model):
RecoveryPlanAutomationRunbookActionDetails, RecoveryPlanManualActionDetails,
RecoveryPlanScriptActionDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of action details (see RecoveryPlanActionDetailsTypes enum
for possible values). Required.
@@ -21553,10 +23610,10 @@ def __init__(self, **kwargs: Any) -> None:
self.instance_type: Optional[str] = None
-class RecoveryPlanAutomationRunbookActionDetails(RecoveryPlanActionDetails):
+class RecoveryPlanAutomationRunbookActionDetails(RecoveryPlanActionDetails): # pylint: disable=name-too-long
"""Recovery plan Automation runbook action details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of action details (see RecoveryPlanActionDetailsTypes enum
for possible values). Required.
@@ -21639,7 +23696,7 @@ def __init__(
class RecoveryPlanGroup(_serialization.Model):
"""Recovery plan group details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar group_type: The group type. Required. Known values are: "Shutdown", "Boot", and
"Failover".
@@ -21704,7 +23761,7 @@ class RecoveryPlanGroupTaskDetails(GroupTaskDetails):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
RecoveryPlanShutdownGroupTaskDetails
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -21758,10 +23815,12 @@ def __init__(
self.rp_group_type = rp_group_type
-class RecoveryPlanHyperVReplicaAzureFailbackInput(RecoveryPlanProviderSpecificFailoverInput):
+class RecoveryPlanHyperVReplicaAzureFailbackInput(
+ RecoveryPlanProviderSpecificFailoverInput
+): # pylint: disable=name-too-long
"""Recovery plan HVR Azure failback input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21810,10 +23869,12 @@ def __init__(
self.recovery_vm_creation_option = recovery_vm_creation_option
-class RecoveryPlanHyperVReplicaAzureFailoverInput(RecoveryPlanProviderSpecificFailoverInput):
+class RecoveryPlanHyperVReplicaAzureFailoverInput(
+ RecoveryPlanProviderSpecificFailoverInput
+): # pylint: disable=name-too-long
"""Recovery plan HVR Azure failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21866,7 +23927,7 @@ def __init__(
class RecoveryPlanInMageAzureV2FailoverInput(RecoveryPlanProviderSpecificFailoverInput):
"""Recovery plan InMageAzureV2 failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21915,7 +23976,7 @@ def __init__(
class RecoveryPlanInMageFailoverInput(RecoveryPlanProviderSpecificFailoverInput):
"""Recovery plan InMage failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21947,10 +24008,12 @@ def __init__(self, *, recovery_point_type: Union[str, "_models.RpInMageRecoveryP
self.recovery_point_type = recovery_point_type
-class RecoveryPlanInMageRcmFailbackFailoverInput(RecoveryPlanProviderSpecificFailoverInput):
+class RecoveryPlanInMageRcmFailbackFailoverInput(
+ RecoveryPlanProviderSpecificFailoverInput
+): # pylint: disable=name-too-long
"""Recovery plan InMageRcmFailback failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -21999,7 +24062,7 @@ def __init__(
class RecoveryPlanInMageRcmFailoverInput(RecoveryPlanProviderSpecificFailoverInput):
"""Recovery plan InMageRcm failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -22048,7 +24111,7 @@ def __init__(
class RecoveryPlanManualActionDetails(RecoveryPlanActionDetails):
"""Recovery plan manual action details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of action details (see RecoveryPlanActionDetailsTypes enum
for possible values). Required.
@@ -22079,7 +24142,7 @@ def __init__(self, *, description: Optional[str] = None, **kwargs: Any) -> None:
class RecoveryPlanPlannedFailoverInput(_serialization.Model):
"""Recovery plan planned failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: The recovery plan planned failover input properties. Required.
:vartype properties:
@@ -22104,10 +24167,10 @@ def __init__(self, *, properties: "_models.RecoveryPlanPlannedFailoverInputPrope
self.properties = properties
-class RecoveryPlanPlannedFailoverInputProperties(_serialization.Model):
+class RecoveryPlanPlannedFailoverInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Recovery plan planned failover input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar failover_direction: The failover direction. Required. Known values are:
"PrimaryToRecovery" and "RecoveryToPrimary".
@@ -22151,7 +24214,7 @@ def __init__(
self.provider_specific_details = provider_specific_details
-class RecoveryPlanProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class RecoveryPlanProperties(_serialization.Model):
"""Recovery plan properties.
:ivar friendly_name: The friendly name.
@@ -22323,7 +24386,7 @@ def __init__(
class RecoveryPlanScriptActionDetails(RecoveryPlanActionDetails):
"""Recovery plan script action details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of action details (see RecoveryPlanActionDetailsTypes enum
for possible values). Required.
@@ -22379,7 +24442,7 @@ def __init__(
class RecoveryPlanShutdownGroupTaskDetails(RecoveryPlanGroupTaskDetails):
"""This class represents the recovery plan shutdown group task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -22431,7 +24494,7 @@ def __init__(
class RecoveryPlanTestFailoverCleanupInput(_serialization.Model):
"""Recovery plan test failover cleanup input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: The recovery plan test failover cleanup input properties. Required.
:vartype properties:
@@ -22456,7 +24519,7 @@ def __init__(self, *, properties: "_models.RecoveryPlanTestFailoverCleanupInputP
self.properties = properties
-class RecoveryPlanTestFailoverCleanupInputProperties(_serialization.Model):
+class RecoveryPlanTestFailoverCleanupInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Recovery plan test failover cleanup input properties.
:ivar comments: The test failover cleanup comments.
@@ -22483,7 +24546,7 @@ def __init__(self, *, comments: Optional[str] = None, **kwargs: Any) -> None:
class RecoveryPlanTestFailoverInput(_serialization.Model):
"""Recovery plan test failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: The recovery plan test failover input properties. Required.
:vartype properties:
@@ -22511,7 +24574,7 @@ def __init__(self, *, properties: "_models.RecoveryPlanTestFailoverInputProperti
class RecoveryPlanTestFailoverInputProperties(_serialization.Model):
"""Recovery plan test failover input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar failover_direction: The failover direction. Required. Known values are:
"PrimaryToRecovery" and "RecoveryToPrimary".
@@ -22573,7 +24636,7 @@ def __init__(
class RecoveryPlanUnplannedFailoverInput(_serialization.Model):
"""Recovery plan unplanned failover input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: The recovery plan unplanned failover input properties. Required.
:vartype properties:
@@ -22598,10 +24661,10 @@ def __init__(self, *, properties: "_models.RecoveryPlanUnplannedFailoverInputPro
self.properties = properties
-class RecoveryPlanUnplannedFailoverInputProperties(_serialization.Model):
+class RecoveryPlanUnplannedFailoverInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Recovery plan unplanned failover input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar failover_direction: The failover direction. Required. Known values are:
"PrimaryToRecovery" and "RecoveryToPrimary".
@@ -22857,7 +24920,7 @@ def __init__(
self.next_link = next_link
-class RecoveryServicesProviderProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class RecoveryServicesProviderProperties(_serialization.Model):
"""Recovery services provider properties.
:ivar fabric_type: Type of the site.
@@ -23030,6 +25093,54 @@ def __init__(
self.provider_version_details = provider_version_details
+class RegisteredClusterNodes(_serialization.Model):
+ """Extended location of the resource.
+
+ :ivar cluster_node_fqdn: The cluster node name.
+ :vartype cluster_node_fqdn: str
+ :ivar machine_id: The machine ID.
+ :vartype machine_id: str
+ :ivar bios_id: The BIOS ID.
+ :vartype bios_id: str
+ :ivar is_shared_disk_virtual_node: A value indicating whether this represents virtual entity
+ hosting all the shared disks.
+ :vartype is_shared_disk_virtual_node: bool
+ """
+
+ _attribute_map = {
+ "cluster_node_fqdn": {"key": "clusterNodeFqdn", "type": "str"},
+ "machine_id": {"key": "machineId", "type": "str"},
+ "bios_id": {"key": "biosId", "type": "str"},
+ "is_shared_disk_virtual_node": {"key": "isSharedDiskVirtualNode", "type": "bool"},
+ }
+
+ def __init__(
+ self,
+ *,
+ cluster_node_fqdn: Optional[str] = None,
+ machine_id: Optional[str] = None,
+ bios_id: Optional[str] = None,
+ is_shared_disk_virtual_node: Optional[bool] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword cluster_node_fqdn: The cluster node name.
+ :paramtype cluster_node_fqdn: str
+ :keyword machine_id: The machine ID.
+ :paramtype machine_id: str
+ :keyword bios_id: The BIOS ID.
+ :paramtype bios_id: str
+ :keyword is_shared_disk_virtual_node: A value indicating whether this represents virtual entity
+ hosting all the shared disks.
+ :paramtype is_shared_disk_virtual_node: bool
+ """
+ super().__init__(**kwargs)
+ self.cluster_node_fqdn = cluster_node_fqdn
+ self.machine_id = machine_id
+ self.bios_id = bios_id
+ self.is_shared_disk_virtual_node = is_shared_disk_virtual_node
+
+
class RemoveDisksInput(_serialization.Model):
"""Input for remove disk(s) operation.
@@ -23103,7 +25214,7 @@ def __init__(
self.properties = properties
-class RemoveProtectionContainerMappingInputProperties(_serialization.Model):
+class RemoveProtectionContainerMappingInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Unpairing input properties.
:ivar provider_specific_input: Provider specific input for unpairing.
@@ -23441,42 +25552,367 @@ def __init__(
class ReplicationGroupDetails(ConfigurationSettings):
"""Replication group details. This will be used in case of San.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
"""
- _validation = {
- "instance_type": {"required": True},
- }
-
+ _validation = {
+ "instance_type": {"required": True},
+ }
+
+ _attribute_map = {
+ "instance_type": {"key": "instanceType", "type": "str"},
+ }
+
+ def __init__(self, **kwargs: Any) -> None:
+ """ """
+ super().__init__(**kwargs)
+ self.instance_type: str = "ReplicationGroupDetails"
+
+
+class ReplicationProtectedItem(Resource):
+ """Replication protected item.
+
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar id: Resource Id.
+ :vartype id: str
+ :ivar name: Resource Name.
+ :vartype name: str
+ :ivar type: Resource Type.
+ :vartype type: str
+ :ivar location: Resource Location.
+ :vartype location: str
+ :ivar properties: The custom data.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItemProperties
+ """
+
+ _validation = {
+ "id": {"readonly": True},
+ "name": {"readonly": True},
+ "type": {"readonly": True},
+ }
+
+ _attribute_map = {
+ "id": {"key": "id", "type": "str"},
+ "name": {"key": "name", "type": "str"},
+ "type": {"key": "type", "type": "str"},
+ "location": {"key": "location", "type": "str"},
+ "properties": {"key": "properties", "type": "ReplicationProtectedItemProperties"},
+ }
+
+ def __init__(
+ self,
+ *,
+ location: Optional[str] = None,
+ properties: Optional["_models.ReplicationProtectedItemProperties"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword location: Resource Location.
+ :paramtype location: str
+ :keyword properties: The custom data.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItemProperties
+ """
+ super().__init__(location=location, **kwargs)
+ self.properties = properties
+
+
+class ReplicationProtectedItemCollection(_serialization.Model):
+ """Replication protected item collection.
+
+ :ivar value: The Replication protected item details.
+ :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem]
+ :ivar next_link: The value of next link.
+ :vartype next_link: str
+ """
+
+ _attribute_map = {
+ "value": {"key": "value", "type": "[ReplicationProtectedItem]"},
+ "next_link": {"key": "nextLink", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ value: Optional[List["_models.ReplicationProtectedItem"]] = None,
+ next_link: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword value: The Replication protected item details.
+ :paramtype value:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem]
+ :keyword next_link: The value of next link.
+ :paramtype next_link: str
+ """
+ super().__init__(**kwargs)
+ self.value = value
+ self.next_link = next_link
+
+
+class ReplicationProtectedItemProperties(_serialization.Model):
+ """Replication protected item custom data details.
+
+ :ivar friendly_name: The name.
+ :vartype friendly_name: str
+ :ivar protected_item_type: The type of protected item type.
+ :vartype protected_item_type: str
+ :ivar protectable_item_id: The protected item ARM Id.
+ :vartype protectable_item_id: str
+ :ivar recovery_services_provider_id: The recovery provider ARM Id.
+ :vartype recovery_services_provider_id: str
+ :ivar primary_fabric_friendly_name: The friendly name of the primary fabric.
+ :vartype primary_fabric_friendly_name: str
+ :ivar primary_fabric_provider: The fabric provider of the primary fabric.
+ :vartype primary_fabric_provider: str
+ :ivar recovery_fabric_friendly_name: The friendly name of recovery fabric.
+ :vartype recovery_fabric_friendly_name: str
+ :ivar recovery_fabric_id: The Arm Id of recovery fabric.
+ :vartype recovery_fabric_id: str
+ :ivar primary_protection_container_friendly_name: The name of primary protection container
+ friendly name.
+ :vartype primary_protection_container_friendly_name: str
+ :ivar recovery_protection_container_friendly_name: The name of recovery container friendly
+ name.
+ :vartype recovery_protection_container_friendly_name: str
+ :ivar protection_state: The protection status.
+ :vartype protection_state: str
+ :ivar protection_state_description: The protection state description.
+ :vartype protection_state_description: str
+ :ivar active_location: The Current active location of the PE.
+ :vartype active_location: str
+ :ivar test_failover_state: The Test failover state.
+ :vartype test_failover_state: str
+ :ivar test_failover_state_description: The Test failover state description.
+ :vartype test_failover_state_description: str
+ :ivar switch_provider_state: The switch provider state.
+ :vartype switch_provider_state: str
+ :ivar switch_provider_state_description: The switch provider state description.
+ :vartype switch_provider_state_description: str
+ :ivar allowed_operations: The allowed operations on the Replication protected item.
+ :vartype allowed_operations: list[str]
+ :ivar replication_health: The consolidated protection health for the VM taking any issues with
+ SRS as well as all the replication units associated with the VM's replication group into
+ account. This is a string representation of the ProtectionHealth enumeration.
+ :vartype replication_health: str
+ :ivar failover_health: The consolidated failover health for the VM.
+ :vartype failover_health: str
+ :ivar health_errors: List of health errors.
+ :vartype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
+ :ivar policy_id: The ID of Policy governing this PE.
+ :vartype policy_id: str
+ :ivar policy_friendly_name: The name of Policy governing this PE.
+ :vartype policy_friendly_name: str
+ :ivar last_successful_failover_time: The Last successful failover time.
+ :vartype last_successful_failover_time: ~datetime.datetime
+ :ivar last_successful_test_failover_time: The Last successful test failover time.
+ :vartype last_successful_test_failover_time: ~datetime.datetime
+ :ivar current_scenario: The current scenario.
+ :vartype current_scenario:
+ ~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
+ :ivar failover_recovery_point_id: The recovery point ARM Id to which the Vm was failed over.
+ :vartype failover_recovery_point_id: str
+ :ivar provider_specific_details: The Replication provider custom settings.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProviderSpecificSettings
+ :ivar recovery_container_id: The recovery container Id.
+ :vartype recovery_container_id: str
+ :ivar event_correlation_id: The correlation Id for events associated with this protected item.
+ :vartype event_correlation_id: str
+ """
+
_attribute_map = {
- "instance_type": {"key": "instanceType", "type": "str"},
+ "friendly_name": {"key": "friendlyName", "type": "str"},
+ "protected_item_type": {"key": "protectedItemType", "type": "str"},
+ "protectable_item_id": {"key": "protectableItemId", "type": "str"},
+ "recovery_services_provider_id": {"key": "recoveryServicesProviderId", "type": "str"},
+ "primary_fabric_friendly_name": {"key": "primaryFabricFriendlyName", "type": "str"},
+ "primary_fabric_provider": {"key": "primaryFabricProvider", "type": "str"},
+ "recovery_fabric_friendly_name": {"key": "recoveryFabricFriendlyName", "type": "str"},
+ "recovery_fabric_id": {"key": "recoveryFabricId", "type": "str"},
+ "primary_protection_container_friendly_name": {"key": "primaryProtectionContainerFriendlyName", "type": "str"},
+ "recovery_protection_container_friendly_name": {
+ "key": "recoveryProtectionContainerFriendlyName",
+ "type": "str",
+ },
+ "protection_state": {"key": "protectionState", "type": "str"},
+ "protection_state_description": {"key": "protectionStateDescription", "type": "str"},
+ "active_location": {"key": "activeLocation", "type": "str"},
+ "test_failover_state": {"key": "testFailoverState", "type": "str"},
+ "test_failover_state_description": {"key": "testFailoverStateDescription", "type": "str"},
+ "switch_provider_state": {"key": "switchProviderState", "type": "str"},
+ "switch_provider_state_description": {"key": "switchProviderStateDescription", "type": "str"},
+ "allowed_operations": {"key": "allowedOperations", "type": "[str]"},
+ "replication_health": {"key": "replicationHealth", "type": "str"},
+ "failover_health": {"key": "failoverHealth", "type": "str"},
+ "health_errors": {"key": "healthErrors", "type": "[HealthError]"},
+ "policy_id": {"key": "policyId", "type": "str"},
+ "policy_friendly_name": {"key": "policyFriendlyName", "type": "str"},
+ "last_successful_failover_time": {"key": "lastSuccessfulFailoverTime", "type": "iso-8601"},
+ "last_successful_test_failover_time": {"key": "lastSuccessfulTestFailoverTime", "type": "iso-8601"},
+ "current_scenario": {"key": "currentScenario", "type": "CurrentScenarioDetails"},
+ "failover_recovery_point_id": {"key": "failoverRecoveryPointId", "type": "str"},
+ "provider_specific_details": {"key": "providerSpecificDetails", "type": "ReplicationProviderSpecificSettings"},
+ "recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
+ "event_correlation_id": {"key": "eventCorrelationId", "type": "str"},
}
- def __init__(self, **kwargs: Any) -> None:
- """ """
+ def __init__( # pylint: disable=too-many-locals
+ self,
+ *,
+ friendly_name: Optional[str] = None,
+ protected_item_type: Optional[str] = None,
+ protectable_item_id: Optional[str] = None,
+ recovery_services_provider_id: Optional[str] = None,
+ primary_fabric_friendly_name: Optional[str] = None,
+ primary_fabric_provider: Optional[str] = None,
+ recovery_fabric_friendly_name: Optional[str] = None,
+ recovery_fabric_id: Optional[str] = None,
+ primary_protection_container_friendly_name: Optional[str] = None,
+ recovery_protection_container_friendly_name: Optional[str] = None,
+ protection_state: Optional[str] = None,
+ protection_state_description: Optional[str] = None,
+ active_location: Optional[str] = None,
+ test_failover_state: Optional[str] = None,
+ test_failover_state_description: Optional[str] = None,
+ switch_provider_state: Optional[str] = None,
+ switch_provider_state_description: Optional[str] = None,
+ allowed_operations: Optional[List[str]] = None,
+ replication_health: Optional[str] = None,
+ failover_health: Optional[str] = None,
+ health_errors: Optional[List["_models.HealthError"]] = None,
+ policy_id: Optional[str] = None,
+ policy_friendly_name: Optional[str] = None,
+ last_successful_failover_time: Optional[datetime.datetime] = None,
+ last_successful_test_failover_time: Optional[datetime.datetime] = None,
+ current_scenario: Optional["_models.CurrentScenarioDetails"] = None,
+ failover_recovery_point_id: Optional[str] = None,
+ provider_specific_details: Optional["_models.ReplicationProviderSpecificSettings"] = None,
+ recovery_container_id: Optional[str] = None,
+ event_correlation_id: Optional[str] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword friendly_name: The name.
+ :paramtype friendly_name: str
+ :keyword protected_item_type: The type of protected item type.
+ :paramtype protected_item_type: str
+ :keyword protectable_item_id: The protected item ARM Id.
+ :paramtype protectable_item_id: str
+ :keyword recovery_services_provider_id: The recovery provider ARM Id.
+ :paramtype recovery_services_provider_id: str
+ :keyword primary_fabric_friendly_name: The friendly name of the primary fabric.
+ :paramtype primary_fabric_friendly_name: str
+ :keyword primary_fabric_provider: The fabric provider of the primary fabric.
+ :paramtype primary_fabric_provider: str
+ :keyword recovery_fabric_friendly_name: The friendly name of recovery fabric.
+ :paramtype recovery_fabric_friendly_name: str
+ :keyword recovery_fabric_id: The Arm Id of recovery fabric.
+ :paramtype recovery_fabric_id: str
+ :keyword primary_protection_container_friendly_name: The name of primary protection container
+ friendly name.
+ :paramtype primary_protection_container_friendly_name: str
+ :keyword recovery_protection_container_friendly_name: The name of recovery container friendly
+ name.
+ :paramtype recovery_protection_container_friendly_name: str
+ :keyword protection_state: The protection status.
+ :paramtype protection_state: str
+ :keyword protection_state_description: The protection state description.
+ :paramtype protection_state_description: str
+ :keyword active_location: The Current active location of the PE.
+ :paramtype active_location: str
+ :keyword test_failover_state: The Test failover state.
+ :paramtype test_failover_state: str
+ :keyword test_failover_state_description: The Test failover state description.
+ :paramtype test_failover_state_description: str
+ :keyword switch_provider_state: The switch provider state.
+ :paramtype switch_provider_state: str
+ :keyword switch_provider_state_description: The switch provider state description.
+ :paramtype switch_provider_state_description: str
+ :keyword allowed_operations: The allowed operations on the Replication protected item.
+ :paramtype allowed_operations: list[str]
+ :keyword replication_health: The consolidated protection health for the VM taking any issues
+ with SRS as well as all the replication units associated with the VM's replication group into
+ account. This is a string representation of the ProtectionHealth enumeration.
+ :paramtype replication_health: str
+ :keyword failover_health: The consolidated failover health for the VM.
+ :paramtype failover_health: str
+ :keyword health_errors: List of health errors.
+ :paramtype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
+ :keyword policy_id: The ID of Policy governing this PE.
+ :paramtype policy_id: str
+ :keyword policy_friendly_name: The name of Policy governing this PE.
+ :paramtype policy_friendly_name: str
+ :keyword last_successful_failover_time: The Last successful failover time.
+ :paramtype last_successful_failover_time: ~datetime.datetime
+ :keyword last_successful_test_failover_time: The Last successful test failover time.
+ :paramtype last_successful_test_failover_time: ~datetime.datetime
+ :keyword current_scenario: The current scenario.
+ :paramtype current_scenario:
+ ~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
+ :keyword failover_recovery_point_id: The recovery point ARM Id to which the Vm was failed over.
+ :paramtype failover_recovery_point_id: str
+ :keyword provider_specific_details: The Replication provider custom settings.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProviderSpecificSettings
+ :keyword recovery_container_id: The recovery container Id.
+ :paramtype recovery_container_id: str
+ :keyword event_correlation_id: The correlation Id for events associated with this protected
+ item.
+ :paramtype event_correlation_id: str
+ """
super().__init__(**kwargs)
- self.instance_type: str = "ReplicationGroupDetails"
+ self.friendly_name = friendly_name
+ self.protected_item_type = protected_item_type
+ self.protectable_item_id = protectable_item_id
+ self.recovery_services_provider_id = recovery_services_provider_id
+ self.primary_fabric_friendly_name = primary_fabric_friendly_name
+ self.primary_fabric_provider = primary_fabric_provider
+ self.recovery_fabric_friendly_name = recovery_fabric_friendly_name
+ self.recovery_fabric_id = recovery_fabric_id
+ self.primary_protection_container_friendly_name = primary_protection_container_friendly_name
+ self.recovery_protection_container_friendly_name = recovery_protection_container_friendly_name
+ self.protection_state = protection_state
+ self.protection_state_description = protection_state_description
+ self.active_location = active_location
+ self.test_failover_state = test_failover_state
+ self.test_failover_state_description = test_failover_state_description
+ self.switch_provider_state = switch_provider_state
+ self.switch_provider_state_description = switch_provider_state_description
+ self.allowed_operations = allowed_operations
+ self.replication_health = replication_health
+ self.failover_health = failover_health
+ self.health_errors = health_errors
+ self.policy_id = policy_id
+ self.policy_friendly_name = policy_friendly_name
+ self.last_successful_failover_time = last_successful_failover_time
+ self.last_successful_test_failover_time = last_successful_test_failover_time
+ self.current_scenario = current_scenario
+ self.failover_recovery_point_id = failover_recovery_point_id
+ self.provider_specific_details = provider_specific_details
+ self.recovery_container_id = recovery_container_id
+ self.event_correlation_id = event_correlation_id
-class ReplicationProtectedItem(Resource):
- """Replication protected item.
+class ReplicationProtectionCluster(_serialization.Model):
+ """Replication protection Cluster.
Variables are only populated by the server, and will be ignored when sending a request.
- :ivar id: Resource Id.
+ :ivar id: The protection cluster Id.
:vartype id: str
- :ivar name: Resource Name.
+ :ivar name: The name of the protection cluster.
:vartype name: str
- :ivar type: Resource Type.
+ :ivar type: The Type of the object.
:vartype type: str
- :ivar location: Resource Location.
- :vartype location: str
:ivar properties: The custom data.
:vartype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItemProperties
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionClusterProperties
"""
_validation = {
@@ -23489,53 +25925,50 @@ class ReplicationProtectedItem(Resource):
"id": {"key": "id", "type": "str"},
"name": {"key": "name", "type": "str"},
"type": {"key": "type", "type": "str"},
- "location": {"key": "location", "type": "str"},
- "properties": {"key": "properties", "type": "ReplicationProtectedItemProperties"},
+ "properties": {"key": "properties", "type": "ReplicationProtectionClusterProperties"},
}
def __init__(
- self,
- *,
- location: Optional[str] = None,
- properties: Optional["_models.ReplicationProtectedItemProperties"] = None,
- **kwargs: Any
+ self, *, properties: Optional["_models.ReplicationProtectionClusterProperties"] = None, **kwargs: Any
) -> None:
"""
- :keyword location: Resource Location.
- :paramtype location: str
:keyword properties: The custom data.
:paramtype properties:
- ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItemProperties
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionClusterProperties
"""
- super().__init__(location=location, **kwargs)
+ super().__init__(**kwargs)
+ self.id = None
+ self.name = None
+ self.type = None
self.properties = properties
-class ReplicationProtectedItemCollection(_serialization.Model):
+class ReplicationProtectionClusterCollection(_serialization.Model):
"""Replication protected item collection.
- :ivar value: The Replication protected item details.
- :vartype value: list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem]
+ :ivar value: The Replication protection cluster details.
+ :vartype value:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
:ivar next_link: The value of next link.
:vartype next_link: str
"""
_attribute_map = {
- "value": {"key": "value", "type": "[ReplicationProtectedItem]"},
+ "value": {"key": "value", "type": "[ReplicationProtectionCluster]"},
"next_link": {"key": "nextLink", "type": "str"},
}
def __init__(
self,
*,
- value: Optional[List["_models.ReplicationProtectedItem"]] = None,
+ value: Optional[List["_models.ReplicationProtectionCluster"]] = None,
next_link: Optional[str] = None,
**kwargs: Any
) -> None:
"""
- :keyword value: The Replication protected item details.
+ :keyword value: The Replication protection cluster details.
:paramtype value:
- list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem]
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
:keyword next_link: The value of next link.
:paramtype next_link: str
"""
@@ -23544,17 +25977,13 @@ def __init__(
self.next_link = next_link
-class ReplicationProtectedItemProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
- """Replication protected item custom data details.
+class ReplicationProtectionClusterProperties(_serialization.Model):
+ """Replication protection cluster custom data details.
- :ivar friendly_name: The name.
- :vartype friendly_name: str
- :ivar protected_item_type: The type of protected item type.
- :vartype protected_item_type: str
- :ivar protectable_item_id: The protected item ARM Id.
- :vartype protectable_item_id: str
- :ivar recovery_services_provider_id: The recovery provider ARM Id.
- :vartype recovery_services_provider_id: str
+ Variables are only populated by the server, and will be ignored when sending a request.
+
+ :ivar protection_cluster_type: The type of protection cluster type.
+ :vartype protection_cluster_type: str
:ivar primary_fabric_friendly_name: The friendly name of the primary fabric.
:vartype primary_fabric_friendly_name: str
:ivar primary_fabric_provider: The fabric provider of the primary fabric.
@@ -23573,53 +26002,63 @@ class ReplicationProtectedItemProperties(_serialization.Model): # pylint: disab
:vartype protection_state: str
:ivar protection_state_description: The protection state description.
:vartype protection_state_description: str
- :ivar active_location: The Current active location of the PE.
+ :ivar active_location: The Current active location of the Protection cluster.
:vartype active_location: str
:ivar test_failover_state: The Test failover state.
:vartype test_failover_state: str
:ivar test_failover_state_description: The Test failover state description.
:vartype test_failover_state_description: str
- :ivar switch_provider_state: The switch provider state.
- :vartype switch_provider_state: str
- :ivar switch_provider_state_description: The switch provider state description.
- :vartype switch_provider_state_description: str
- :ivar allowed_operations: The allowed operations on the Replication protected item.
+ :ivar allowed_operations: The allowed operations on the Replication protection cluster.
:vartype allowed_operations: list[str]
:ivar replication_health: The consolidated protection health for the VM taking any issues with
SRS as well as all the replication units associated with the VM's replication group into
account. This is a string representation of the ProtectionHealth enumeration.
:vartype replication_health: str
- :ivar failover_health: The consolidated failover health for the VM.
- :vartype failover_health: str
:ivar health_errors: List of health errors.
:vartype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
- :ivar policy_id: The ID of Policy governing this PE.
- :vartype policy_id: str
- :ivar policy_friendly_name: The name of Policy governing this PE.
- :vartype policy_friendly_name: str
- :ivar last_successful_failover_time: The Last successful failover time.
+ :ivar last_successful_failover_time: The last successful failover time.
:vartype last_successful_failover_time: ~datetime.datetime
- :ivar last_successful_test_failover_time: The Last successful test failover time.
+ :ivar last_successful_test_failover_time: The last successful test failover time.
:vartype last_successful_test_failover_time: ~datetime.datetime
+ :ivar policy_friendly_name: The name of Policy governing this PE.
+ :vartype policy_friendly_name: str
:ivar current_scenario: The current scenario.
:vartype current_scenario:
~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
- :ivar failover_recovery_point_id: The recovery point ARM Id to which the Vm was failed over.
- :vartype failover_recovery_point_id: str
- :ivar provider_specific_details: The Replication provider custom settings.
- :vartype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProviderSpecificSettings
:ivar recovery_container_id: The recovery container Id.
:vartype recovery_container_id: str
- :ivar event_correlation_id: The correlation Id for events associated with this protected item.
- :vartype event_correlation_id: str
+ :ivar agent_cluster_id: The Agent cluster Id.
+ :vartype agent_cluster_id: str
+ :ivar cluster_fqdn: The cluster FQDN.
+ :vartype cluster_fqdn: str
+ :ivar cluster_node_fqdns: The List of cluster Node FQDNs.
+ :vartype cluster_node_fqdns: list[str]
+ :ivar cluster_protected_item_ids: The List of Protected Item Id's.
+ :vartype cluster_protected_item_ids: list[str]
+ :ivar provisioning_state: The provisioning state of the cluster.
+ :vartype provisioning_state: str
+ :ivar are_all_cluster_nodes_registered: A value indicating whether all nodes of the cluster are
+ registered or not.
+ :vartype are_all_cluster_nodes_registered: bool
+ :ivar cluster_registered_nodes: The registered node details.
+ :vartype cluster_registered_nodes:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.RegisteredClusterNodes]
+ :ivar provider_specific_details: The Replication cluster provider custom settings.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationClusterProviderSpecificSettings
+ :ivar shared_disk_properties: The shared disk properties.
+ :vartype shared_disk_properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SharedDiskReplicationItemProperties
+ :ivar policy_id: The Policy Id.
+ :vartype policy_id: str
"""
+ _validation = {
+ "provisioning_state": {"readonly": True},
+ }
+
_attribute_map = {
- "friendly_name": {"key": "friendlyName", "type": "str"},
- "protected_item_type": {"key": "protectedItemType", "type": "str"},
- "protectable_item_id": {"key": "protectableItemId", "type": "str"},
- "recovery_services_provider_id": {"key": "recoveryServicesProviderId", "type": "str"},
+ "protection_cluster_type": {"key": "protectionClusterType", "type": "str"},
"primary_fabric_friendly_name": {"key": "primaryFabricFriendlyName", "type": "str"},
"primary_fabric_provider": {"key": "primaryFabricProvider", "type": "str"},
"recovery_fabric_friendly_name": {"key": "recoveryFabricFriendlyName", "type": "str"},
@@ -23634,30 +26073,33 @@ class ReplicationProtectedItemProperties(_serialization.Model): # pylint: disab
"active_location": {"key": "activeLocation", "type": "str"},
"test_failover_state": {"key": "testFailoverState", "type": "str"},
"test_failover_state_description": {"key": "testFailoverStateDescription", "type": "str"},
- "switch_provider_state": {"key": "switchProviderState", "type": "str"},
- "switch_provider_state_description": {"key": "switchProviderStateDescription", "type": "str"},
"allowed_operations": {"key": "allowedOperations", "type": "[str]"},
"replication_health": {"key": "replicationHealth", "type": "str"},
- "failover_health": {"key": "failoverHealth", "type": "str"},
"health_errors": {"key": "healthErrors", "type": "[HealthError]"},
- "policy_id": {"key": "policyId", "type": "str"},
- "policy_friendly_name": {"key": "policyFriendlyName", "type": "str"},
"last_successful_failover_time": {"key": "lastSuccessfulFailoverTime", "type": "iso-8601"},
"last_successful_test_failover_time": {"key": "lastSuccessfulTestFailoverTime", "type": "iso-8601"},
+ "policy_friendly_name": {"key": "policyFriendlyName", "type": "str"},
"current_scenario": {"key": "currentScenario", "type": "CurrentScenarioDetails"},
- "failover_recovery_point_id": {"key": "failoverRecoveryPointId", "type": "str"},
- "provider_specific_details": {"key": "providerSpecificDetails", "type": "ReplicationProviderSpecificSettings"},
"recovery_container_id": {"key": "recoveryContainerId", "type": "str"},
- "event_correlation_id": {"key": "eventCorrelationId", "type": "str"},
+ "agent_cluster_id": {"key": "agentClusterId", "type": "str"},
+ "cluster_fqdn": {"key": "clusterFqdn", "type": "str"},
+ "cluster_node_fqdns": {"key": "clusterNodeFqdns", "type": "[str]"},
+ "cluster_protected_item_ids": {"key": "clusterProtectedItemIds", "type": "[str]"},
+ "provisioning_state": {"key": "provisioningState", "type": "str"},
+ "are_all_cluster_nodes_registered": {"key": "areAllClusterNodesRegistered", "type": "bool"},
+ "cluster_registered_nodes": {"key": "clusterRegisteredNodes", "type": "[RegisteredClusterNodes]"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "ReplicationClusterProviderSpecificSettings",
+ },
+ "shared_disk_properties": {"key": "sharedDiskProperties", "type": "SharedDiskReplicationItemProperties"},
+ "policy_id": {"key": "policyId", "type": "str"},
}
def __init__( # pylint: disable=too-many-locals
self,
*,
- friendly_name: Optional[str] = None,
- protected_item_type: Optional[str] = None,
- protectable_item_id: Optional[str] = None,
- recovery_services_provider_id: Optional[str] = None,
+ protection_cluster_type: Optional[str] = None,
primary_fabric_friendly_name: Optional[str] = None,
primary_fabric_provider: Optional[str] = None,
recovery_fabric_friendly_name: Optional[str] = None,
@@ -23669,32 +26111,28 @@ def __init__( # pylint: disable=too-many-locals
active_location: Optional[str] = None,
test_failover_state: Optional[str] = None,
test_failover_state_description: Optional[str] = None,
- switch_provider_state: Optional[str] = None,
- switch_provider_state_description: Optional[str] = None,
allowed_operations: Optional[List[str]] = None,
replication_health: Optional[str] = None,
- failover_health: Optional[str] = None,
health_errors: Optional[List["_models.HealthError"]] = None,
- policy_id: Optional[str] = None,
- policy_friendly_name: Optional[str] = None,
last_successful_failover_time: Optional[datetime.datetime] = None,
last_successful_test_failover_time: Optional[datetime.datetime] = None,
+ policy_friendly_name: Optional[str] = None,
current_scenario: Optional["_models.CurrentScenarioDetails"] = None,
- failover_recovery_point_id: Optional[str] = None,
- provider_specific_details: Optional["_models.ReplicationProviderSpecificSettings"] = None,
recovery_container_id: Optional[str] = None,
- event_correlation_id: Optional[str] = None,
+ agent_cluster_id: Optional[str] = None,
+ cluster_fqdn: Optional[str] = None,
+ cluster_node_fqdns: Optional[List[str]] = None,
+ cluster_protected_item_ids: Optional[List[str]] = None,
+ are_all_cluster_nodes_registered: Optional[bool] = None,
+ cluster_registered_nodes: Optional[List["_models.RegisteredClusterNodes"]] = None,
+ provider_specific_details: Optional["_models.ReplicationClusterProviderSpecificSettings"] = None,
+ shared_disk_properties: Optional["_models.SharedDiskReplicationItemProperties"] = None,
+ policy_id: Optional[str] = None,
**kwargs: Any
) -> None:
"""
- :keyword friendly_name: The name.
- :paramtype friendly_name: str
- :keyword protected_item_type: The type of protected item type.
- :paramtype protected_item_type: str
- :keyword protectable_item_id: The protected item ARM Id.
- :paramtype protectable_item_id: str
- :keyword recovery_services_provider_id: The recovery provider ARM Id.
- :paramtype recovery_services_provider_id: str
+ :keyword protection_cluster_type: The type of protection cluster type.
+ :paramtype protection_cluster_type: str
:keyword primary_fabric_friendly_name: The friendly name of the primary fabric.
:paramtype primary_fabric_friendly_name: str
:keyword primary_fabric_provider: The fabric provider of the primary fabric.
@@ -23713,53 +26151,56 @@ def __init__( # pylint: disable=too-many-locals
:paramtype protection_state: str
:keyword protection_state_description: The protection state description.
:paramtype protection_state_description: str
- :keyword active_location: The Current active location of the PE.
+ :keyword active_location: The Current active location of the Protection cluster.
:paramtype active_location: str
:keyword test_failover_state: The Test failover state.
:paramtype test_failover_state: str
:keyword test_failover_state_description: The Test failover state description.
:paramtype test_failover_state_description: str
- :keyword switch_provider_state: The switch provider state.
- :paramtype switch_provider_state: str
- :keyword switch_provider_state_description: The switch provider state description.
- :paramtype switch_provider_state_description: str
- :keyword allowed_operations: The allowed operations on the Replication protected item.
+ :keyword allowed_operations: The allowed operations on the Replication protection cluster.
:paramtype allowed_operations: list[str]
:keyword replication_health: The consolidated protection health for the VM taking any issues
with SRS as well as all the replication units associated with the VM's replication group into
account. This is a string representation of the ProtectionHealth enumeration.
:paramtype replication_health: str
- :keyword failover_health: The consolidated failover health for the VM.
- :paramtype failover_health: str
:keyword health_errors: List of health errors.
:paramtype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
- :keyword policy_id: The ID of Policy governing this PE.
- :paramtype policy_id: str
- :keyword policy_friendly_name: The name of Policy governing this PE.
- :paramtype policy_friendly_name: str
- :keyword last_successful_failover_time: The Last successful failover time.
+ :keyword last_successful_failover_time: The last successful failover time.
:paramtype last_successful_failover_time: ~datetime.datetime
- :keyword last_successful_test_failover_time: The Last successful test failover time.
+ :keyword last_successful_test_failover_time: The last successful test failover time.
:paramtype last_successful_test_failover_time: ~datetime.datetime
+ :keyword policy_friendly_name: The name of Policy governing this PE.
+ :paramtype policy_friendly_name: str
:keyword current_scenario: The current scenario.
:paramtype current_scenario:
~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
- :keyword failover_recovery_point_id: The recovery point ARM Id to which the Vm was failed over.
- :paramtype failover_recovery_point_id: str
- :keyword provider_specific_details: The Replication provider custom settings.
- :paramtype provider_specific_details:
- ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProviderSpecificSettings
:keyword recovery_container_id: The recovery container Id.
:paramtype recovery_container_id: str
- :keyword event_correlation_id: The correlation Id for events associated with this protected
- item.
- :paramtype event_correlation_id: str
+ :keyword agent_cluster_id: The Agent cluster Id.
+ :paramtype agent_cluster_id: str
+ :keyword cluster_fqdn: The cluster FQDN.
+ :paramtype cluster_fqdn: str
+ :keyword cluster_node_fqdns: The List of cluster Node FQDNs.
+ :paramtype cluster_node_fqdns: list[str]
+ :keyword cluster_protected_item_ids: The List of Protected Item Id's.
+ :paramtype cluster_protected_item_ids: list[str]
+ :keyword are_all_cluster_nodes_registered: A value indicating whether all nodes of the cluster
+ are registered or not.
+ :paramtype are_all_cluster_nodes_registered: bool
+ :keyword cluster_registered_nodes: The registered node details.
+ :paramtype cluster_registered_nodes:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.RegisteredClusterNodes]
+ :keyword provider_specific_details: The Replication cluster provider custom settings.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationClusterProviderSpecificSettings
+ :keyword shared_disk_properties: The shared disk properties.
+ :paramtype shared_disk_properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SharedDiskReplicationItemProperties
+ :keyword policy_id: The Policy Id.
+ :paramtype policy_id: str
"""
super().__init__(**kwargs)
- self.friendly_name = friendly_name
- self.protected_item_type = protected_item_type
- self.protectable_item_id = protectable_item_id
- self.recovery_services_provider_id = recovery_services_provider_id
+ self.protection_cluster_type = protection_cluster_type
self.primary_fabric_friendly_name = primary_fabric_friendly_name
self.primary_fabric_provider = primary_fabric_provider
self.recovery_fabric_friendly_name = recovery_fabric_friendly_name
@@ -23771,21 +26212,24 @@ def __init__( # pylint: disable=too-many-locals
self.active_location = active_location
self.test_failover_state = test_failover_state
self.test_failover_state_description = test_failover_state_description
- self.switch_provider_state = switch_provider_state
- self.switch_provider_state_description = switch_provider_state_description
self.allowed_operations = allowed_operations
self.replication_health = replication_health
- self.failover_health = failover_health
self.health_errors = health_errors
- self.policy_id = policy_id
- self.policy_friendly_name = policy_friendly_name
self.last_successful_failover_time = last_successful_failover_time
self.last_successful_test_failover_time = last_successful_test_failover_time
+ self.policy_friendly_name = policy_friendly_name
self.current_scenario = current_scenario
- self.failover_recovery_point_id = failover_recovery_point_id
- self.provider_specific_details = provider_specific_details
self.recovery_container_id = recovery_container_id
- self.event_correlation_id = event_correlation_id
+ self.agent_cluster_id = agent_cluster_id
+ self.cluster_fqdn = cluster_fqdn
+ self.cluster_node_fqdns = cluster_node_fqdns
+ self.cluster_protected_item_ids = cluster_protected_item_ids
+ self.provisioning_state = None
+ self.are_all_cluster_nodes_registered = are_all_cluster_nodes_registered
+ self.cluster_registered_nodes = cluster_registered_nodes
+ self.provider_specific_details = provider_specific_details
+ self.shared_disk_properties = shared_disk_properties
+ self.policy_id = policy_id
class ReplicationProtectionIntent(Resource):
@@ -23934,7 +26378,7 @@ def __init__(
self.provider_specific_details = provider_specific_details
-class ReplicationProviderContainerUnmappingInput(_serialization.Model):
+class ReplicationProviderContainerUnmappingInput(_serialization.Model): # pylint: disable=name-too-long
"""Provider specific input for unpairing operations.
:ivar instance_type: The class type.
@@ -23954,7 +26398,7 @@ def __init__(self, *, instance_type: Optional[str] = None, **kwargs: Any) -> Non
self.instance_type = instance_type
-class ReprotectAgentDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class ReprotectAgentDetails(_serialization.Model):
"""Reprotect agent details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -24185,7 +26629,7 @@ def __init__(self, *, comments: Optional[str] = None, **kwargs: Any) -> None:
class ResumeReplicationInput(_serialization.Model):
"""Resume replication input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Resume replication input properties. Required.
:vartype properties:
@@ -24213,7 +26657,7 @@ def __init__(self, *, properties: "_models.ResumeReplicationInputProperties", **
class ResumeReplicationInputProperties(_serialization.Model):
"""Resume replication input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar provider_specific_details: The provider specific input for resume replication. Required.
:vartype provider_specific_details:
@@ -24250,7 +26694,7 @@ class ResumeReplicationProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtResumeReplicationInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -24275,7 +26719,7 @@ def __init__(self, **kwargs: Any) -> None:
class ResyncInput(_serialization.Model):
"""Resync input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Resync input properties. Required.
:vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.ResyncInputProperties
@@ -24301,7 +26745,7 @@ def __init__(self, *, properties: "_models.ResyncInputProperties", **kwargs: Any
class ResyncInputProperties(_serialization.Model):
"""Resync input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar provider_specific_details: The provider specific details. Required.
:vartype provider_specific_details:
@@ -24332,7 +26776,7 @@ class ResyncProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtResyncInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -24543,7 +26987,7 @@ def __init__(self, *, account_id: Optional[str] = None, account_name: Optional[s
class ScriptActionTaskDetails(TaskTypeDetails):
"""This class represents the script action task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -24596,6 +27040,79 @@ def __init__(
self.is_primary_side_script = is_primary_side_script
+class SecurityProfileProperties(_serialization.Model):
+ """Security profile input.
+
+ :ivar target_vm_security_type: The target VM security type. Known values are: "None",
+ "TrustedLaunch", and "ConfidentialVM".
+ :vartype target_vm_security_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityType
+ :ivar target_vm_secure_boot: A value indicating whether secure boot to be enabled. Known values
+ are: "Disabled" and "Enabled".
+ :vartype target_vm_secure_boot: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :ivar target_vm_tpm: A value indicating whether trusted platform module to be enabled. Known
+ values are: "Disabled" and "Enabled".
+ :vartype target_vm_tpm: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :ivar target_vm_monitoring: A value indicating whether integrity monitoring to be enabled.
+ Known values are: "Disabled" and "Enabled".
+ :vartype target_vm_monitoring: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :ivar target_vm_confidential_encryption: A value indicating whether confidential compute
+ encryption to be enabled. Known values are: "Disabled" and "Enabled".
+ :vartype target_vm_confidential_encryption: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ """
+
+ _attribute_map = {
+ "target_vm_security_type": {"key": "targetVmSecurityType", "type": "str"},
+ "target_vm_secure_boot": {"key": "targetVmSecureBoot", "type": "str"},
+ "target_vm_tpm": {"key": "targetVmTpm", "type": "str"},
+ "target_vm_monitoring": {"key": "targetVmMonitoring", "type": "str"},
+ "target_vm_confidential_encryption": {"key": "targetVmConfidentialEncryption", "type": "str"},
+ }
+
+ def __init__(
+ self,
+ *,
+ target_vm_security_type: Optional[Union[str, "_models.SecurityType"]] = None,
+ target_vm_secure_boot: Optional[Union[str, "_models.SecurityConfiguration"]] = None,
+ target_vm_tpm: Optional[Union[str, "_models.SecurityConfiguration"]] = None,
+ target_vm_monitoring: Optional[Union[str, "_models.SecurityConfiguration"]] = None,
+ target_vm_confidential_encryption: Optional[Union[str, "_models.SecurityConfiguration"]] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword target_vm_security_type: The target VM security type. Known values are: "None",
+ "TrustedLaunch", and "ConfidentialVM".
+ :paramtype target_vm_security_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityType
+ :keyword target_vm_secure_boot: A value indicating whether secure boot to be enabled. Known
+ values are: "Disabled" and "Enabled".
+ :paramtype target_vm_secure_boot: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :keyword target_vm_tpm: A value indicating whether trusted platform module to be enabled. Known
+ values are: "Disabled" and "Enabled".
+ :paramtype target_vm_tpm: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :keyword target_vm_monitoring: A value indicating whether integrity monitoring to be enabled.
+ Known values are: "Disabled" and "Enabled".
+ :paramtype target_vm_monitoring: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ :keyword target_vm_confidential_encryption: A value indicating whether confidential compute
+ encryption to be enabled. Known values are: "Disabled" and "Enabled".
+ :paramtype target_vm_confidential_encryption: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.SecurityConfiguration
+ """
+ super().__init__(**kwargs)
+ self.target_vm_security_type = target_vm_security_type
+ self.target_vm_secure_boot = target_vm_secure_boot
+ self.target_vm_tpm = target_vm_tpm
+ self.target_vm_monitoring = target_vm_monitoring
+ self.target_vm_confidential_encryption = target_vm_confidential_encryption
+
+
class ServiceError(_serialization.Model):
"""ASR error model.
@@ -24649,6 +27166,91 @@ def __init__(
self.activity_id = activity_id
+class SharedDiskReplicationItemProperties(_serialization.Model):
+ """Shared Disk Replication item custom data details.
+
+ :ivar protection_state: The protection state of shared disk.
+ :vartype protection_state: str
+ :ivar test_failover_state: The tfo state of shared disk.
+ :vartype test_failover_state: str
+ :ivar active_location: The Current active location of the PE.
+ :vartype active_location: str
+ :ivar allowed_operations: The allowed operations on the Replication protected item.
+ :vartype allowed_operations: list[str]
+ :ivar replication_health: The consolidated protection health for the VM taking any issues with
+ SRS as well as all the replication units associated with the VM's replication group into
+ account. This is a string representation of the ProtectionHealth enumeration.
+ :vartype replication_health: str
+ :ivar health_errors: List of health errors.
+ :vartype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
+ :ivar current_scenario: The current scenario.
+ :vartype current_scenario:
+ ~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
+ :ivar shared_disk_provider_specific_details: The Replication provider custom settings.
+ :vartype shared_disk_provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SharedDiskReplicationProviderSpecificSettings
+ """
+
+ _attribute_map = {
+ "protection_state": {"key": "protectionState", "type": "str"},
+ "test_failover_state": {"key": "testFailoverState", "type": "str"},
+ "active_location": {"key": "activeLocation", "type": "str"},
+ "allowed_operations": {"key": "allowedOperations", "type": "[str]"},
+ "replication_health": {"key": "replicationHealth", "type": "str"},
+ "health_errors": {"key": "healthErrors", "type": "[HealthError]"},
+ "current_scenario": {"key": "currentScenario", "type": "CurrentScenarioDetails"},
+ "shared_disk_provider_specific_details": {
+ "key": "sharedDiskProviderSpecificDetails",
+ "type": "SharedDiskReplicationProviderSpecificSettings",
+ },
+ }
+
+ def __init__(
+ self,
+ *,
+ protection_state: Optional[str] = None,
+ test_failover_state: Optional[str] = None,
+ active_location: Optional[str] = None,
+ allowed_operations: Optional[List[str]] = None,
+ replication_health: Optional[str] = None,
+ health_errors: Optional[List["_models.HealthError"]] = None,
+ current_scenario: Optional["_models.CurrentScenarioDetails"] = None,
+ shared_disk_provider_specific_details: Optional["_models.SharedDiskReplicationProviderSpecificSettings"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword protection_state: The protection state of shared disk.
+ :paramtype protection_state: str
+ :keyword test_failover_state: The tfo state of shared disk.
+ :paramtype test_failover_state: str
+ :keyword active_location: The Current active location of the PE.
+ :paramtype active_location: str
+ :keyword allowed_operations: The allowed operations on the Replication protected item.
+ :paramtype allowed_operations: list[str]
+ :keyword replication_health: The consolidated protection health for the VM taking any issues
+ with SRS as well as all the replication units associated with the VM's replication group into
+ account. This is a string representation of the ProtectionHealth enumeration.
+ :paramtype replication_health: str
+ :keyword health_errors: List of health errors.
+ :paramtype health_errors: list[~azure.mgmt.recoveryservicessiterecovery.models.HealthError]
+ :keyword current_scenario: The current scenario.
+ :paramtype current_scenario:
+ ~azure.mgmt.recoveryservicessiterecovery.models.CurrentScenarioDetails
+ :keyword shared_disk_provider_specific_details: The Replication provider custom settings.
+ :paramtype shared_disk_provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SharedDiskReplicationProviderSpecificSettings
+ """
+ super().__init__(**kwargs)
+ self.protection_state = protection_state
+ self.test_failover_state = test_failover_state
+ self.active_location = active_location
+ self.allowed_operations = allowed_operations
+ self.replication_health = replication_health
+ self.health_errors = health_errors
+ self.current_scenario = current_scenario
+ self.shared_disk_provider_specific_details = shared_disk_provider_specific_details
+
+
class StorageClassification(Resource):
"""Storage object definition.
@@ -25080,6 +27682,67 @@ def __init__(
self.supported_os = supported_os
+class SwitchClusterProtectionInput(_serialization.Model):
+ """Switch cluster protection input.
+
+ :ivar properties: Switch cluster protection properties.
+ :vartype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInputProperties
+ """
+
+ _attribute_map = {
+ "properties": {"key": "properties", "type": "SwitchClusterProtectionInputProperties"},
+ }
+
+ def __init__(
+ self, *, properties: Optional["_models.SwitchClusterProtectionInputProperties"] = None, **kwargs: Any
+ ) -> None:
+ """
+ :keyword properties: Switch cluster protection properties.
+ :paramtype properties:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInputProperties
+ """
+ super().__init__(**kwargs)
+ self.properties = properties
+
+
+class SwitchClusterProtectionInputProperties(_serialization.Model):
+ """Switch cluster protection input properties.
+
+ :ivar replication_protection_cluster_name: The unique replication protection cluster name.
+ :vartype replication_protection_cluster_name: str
+ :ivar provider_specific_details: Provider specific switch protection input.
+ :vartype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionProviderSpecificInput
+ """
+
+ _attribute_map = {
+ "replication_protection_cluster_name": {"key": "replicationProtectionClusterName", "type": "str"},
+ "provider_specific_details": {
+ "key": "providerSpecificDetails",
+ "type": "SwitchClusterProtectionProviderSpecificInput",
+ },
+ }
+
+ def __init__(
+ self,
+ *,
+ replication_protection_cluster_name: Optional[str] = None,
+ provider_specific_details: Optional["_models.SwitchClusterProtectionProviderSpecificInput"] = None,
+ **kwargs: Any
+ ) -> None:
+ """
+ :keyword replication_protection_cluster_name: The unique replication protection cluster name.
+ :paramtype replication_protection_cluster_name: str
+ :keyword provider_specific_details: Provider specific switch protection input.
+ :paramtype provider_specific_details:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionProviderSpecificInput
+ """
+ super().__init__(**kwargs)
+ self.replication_protection_cluster_name = replication_protection_cluster_name
+ self.provider_specific_details = provider_specific_details
+
+
class SwitchProtectionInput(_serialization.Model):
"""Switch protection input.
@@ -25144,7 +27807,7 @@ def __init__(
class SwitchProtectionJobDetails(JobDetails):
"""This class represents details for switch protection job.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
values). Required.
@@ -25419,7 +28082,7 @@ def __init__(
class TestFailoverCleanupInput(_serialization.Model):
"""Input definition for test failover cleanup.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Test failover cleanup input properties. Required.
:vartype properties:
@@ -25471,7 +28134,7 @@ def __init__(self, *, comments: Optional[str] = None, **kwargs: Any) -> None:
class TestFailoverInput(_serialization.Model):
"""Input definition for test failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Test failover input properties. Required.
:vartype properties:
@@ -25547,7 +28210,7 @@ def __init__(
class TestFailoverJobDetails(JobDetails):
"""This class represents the details for a test failover job.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the type of job details (see JobDetailsTypes enum for possible
values). Required.
@@ -25628,7 +28291,7 @@ def __init__(
class TestMigrateCleanupInput(_serialization.Model):
"""Input for test migrate cleanup.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Test migrate cleanup input properties. Required.
:vartype properties:
@@ -25680,7 +28343,7 @@ def __init__(self, *, comments: Optional[str] = None, **kwargs: Any) -> None:
class TestMigrateInput(_serialization.Model):
"""Input for test migrate.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Test migrate input properties. Required.
:vartype properties: ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateInputProperties
@@ -25707,7 +28370,7 @@ def __init__(self, *, properties: "_models.TestMigrateInputProperties", **kwargs
class TestMigrateInputProperties(_serialization.Model):
"""Test migrate input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar provider_specific_details: The provider specific details. Required.
:vartype provider_specific_details:
@@ -25738,7 +28401,7 @@ class TestMigrateProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtTestMigrateInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -25763,7 +28426,7 @@ def __init__(self, **kwargs: Any) -> None:
class UnplannedFailoverInput(_serialization.Model):
"""Input definition for unplanned failover.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Unplanned failover input properties. Required.
:vartype properties:
@@ -25832,10 +28495,10 @@ def __init__(
self.provider_specific_details = provider_specific_details
-class UpdateApplianceForReplicationProtectedItemInput(_serialization.Model):
+class UpdateApplianceForReplicationProtectedItemInput(_serialization.Model): # pylint: disable=name-too-long
"""Update appliance for replication protected item input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Update appliance replication protected item properties. Required.
:vartype properties:
@@ -25862,10 +28525,10 @@ def __init__(
self.properties = properties
-class UpdateApplianceForReplicationProtectedItemInputProperties(_serialization.Model):
+class UpdateApplianceForReplicationProtectedItemInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Update appliance for protected item input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar target_appliance_id: The target appliance Id. Required.
:vartype target_appliance_id: str
@@ -25911,12 +28574,18 @@ def __init__(
class UpdateDiskInput(_serialization.Model):
"""Disk input for update.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_id: The disk Id. Required.
:vartype disk_id: str
:ivar target_disk_name: The target disk name.
:vartype target_disk_name: str
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -25926,18 +28595,39 @@ class UpdateDiskInput(_serialization.Model):
_attribute_map = {
"disk_id": {"key": "diskId", "type": "str"},
"target_disk_name": {"key": "targetDiskName", "type": "str"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
- def __init__(self, *, disk_id: str, target_disk_name: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ disk_id: str,
+ target_disk_name: Optional[str] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
+ **kwargs: Any
+ ) -> None:
"""
:keyword disk_id: The disk Id. Required.
:paramtype disk_id: str
:keyword target_disk_name: The target disk name.
:paramtype target_disk_name: str
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
self.target_disk_name = target_disk_name
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
class UpdateMigrationItemInput(_serialization.Model):
@@ -25967,7 +28657,7 @@ def __init__(
class UpdateMigrationItemInputProperties(_serialization.Model):
"""Update migration item input properties.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar provider_specific_details: The provider specific input to update migration item.
Required.
@@ -26005,7 +28695,7 @@ class UpdateMigrationItemProviderSpecificInput(_serialization.Model):
You probably want to use the sub-classes and not this class directly. Known sub-classes are:
VMwareCbtUpdateMigrationItemInput
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -26206,7 +28896,7 @@ def __init__(
self.properties = properties
-class UpdateProtectionContainerMappingInputProperties(_serialization.Model):
+class UpdateProtectionContainerMappingInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Container pairing update input.
:ivar provider_specific_input: Provider specific input for updating protection container
@@ -26306,7 +28996,7 @@ def __init__(
self.properties = properties
-class UpdateReplicationProtectedItemInputProperties(_serialization.Model):
+class UpdateReplicationProtectedItemInputProperties(_serialization.Model): # pylint: disable=name-too-long
"""Update protected item input properties.
:ivar recovery_azure_vm_name: Target Azure VM name given by the user.
@@ -26320,7 +29010,7 @@ class UpdateReplicationProtectedItemInputProperties(_serialization.Model):
:ivar selected_source_nic_id: The selected source nic Id which will be used as the primary nic
during failover.
:vartype selected_source_nic_id: str
- :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :ivar enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:vartype enable_rdp_on_target_option: str
:ivar vm_nics: The list of VM nic details.
@@ -26379,7 +29069,7 @@ def __init__(
:keyword selected_source_nic_id: The selected source nic Id which will be used as the primary
nic during failover.
:paramtype selected_source_nic_id: str
- :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
+ :keyword enable_rdp_on_target_option: The selected option to enable RDP\\SSH on target vm after
failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.
:paramtype enable_rdp_on_target_option: str
:keyword vm_nics: The list of VM nic details.
@@ -26482,6 +29172,41 @@ def __init__(
self.run_as_account_id = run_as_account_id
+class UserCreatedResourceTag(_serialization.Model):
+ """Resource tag input.
+
+ :ivar tag_name: The tag name. Please read for more information:
+ https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations.
+ :vartype tag_name: str
+ :ivar tag_value: The tag value. Please read her for more information:
+ https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations.
+ :vartype tag_value: str
+ """
+
+ _validation = {
+ "tag_name": {"max_length": 512},
+ "tag_value": {"max_length": 256},
+ }
+
+ _attribute_map = {
+ "tag_name": {"key": "tagName", "type": "str"},
+ "tag_value": {"key": "tagValue", "type": "str"},
+ }
+
+ def __init__(self, *, tag_name: Optional[str] = None, tag_value: Optional[str] = None, **kwargs: Any) -> None:
+ """
+ :keyword tag_name: The tag name. Please read for more information:
+ https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations.
+ :paramtype tag_name: str
+ :keyword tag_value: The tag value. Please read her for more information:
+ https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources#limitations.
+ :paramtype tag_value: str
+ """
+ super().__init__(**kwargs)
+ self.tag_name = tag_name
+ self.tag_value = tag_value
+
+
class VaultHealthDetails(Resource):
"""Vault health details definition.
@@ -26662,7 +29387,7 @@ def __init__(
class VaultSettingCreationInput(_serialization.Model):
"""Input to create vault setting.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar properties: Vault setting creation input properties. Required.
:vartype properties:
@@ -26823,7 +29548,7 @@ def __init__(
self.next_link = next_link
-class VCenterProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class VCenterProperties(_serialization.Model):
"""vCenter properties.
:ivar friendly_name: Friendly name of the vCenter.
@@ -26962,7 +29687,7 @@ def __init__(
class VirtualMachineTaskDetails(JobTaskDetails):
"""This class represents the virtual machine task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -27010,7 +29735,7 @@ def __init__(
class VmmDetails(FabricSpecificDetails):
"""VMM fabric specific details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -27033,7 +29758,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToAzureCreateNetworkMappingInput(FabricSpecificCreateNetworkMappingInput):
"""Create network mappings input properties/behavior specific to Vmm to Azure Network mapping.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The instance type. Required.
:vartype instance_type: str
@@ -27056,7 +29781,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToAzureNetworkMappingSettings(NetworkMappingFabricSpecificSettings):
"""E2A Network Mapping fabric specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -27079,7 +29804,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToAzureUpdateNetworkMappingInput(FabricSpecificUpdateNetworkMappingInput):
"""Update network mappings input properties/behavior specific to vmm to azure.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The instance type. Required.
:vartype instance_type: str
@@ -27102,7 +29827,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToVmmCreateNetworkMappingInput(FabricSpecificCreateNetworkMappingInput):
"""Create network mappings input properties/behavior specific to vmm to vmm Network mapping.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The instance type. Required.
:vartype instance_type: str
@@ -27125,7 +29850,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToVmmNetworkMappingSettings(NetworkMappingFabricSpecificSettings):
"""E2E Network Mapping fabric specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the Instance type. Required.
:vartype instance_type: str
@@ -27148,7 +29873,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmToVmmUpdateNetworkMappingInput(FabricSpecificUpdateNetworkMappingInput):
"""Update network mappings input properties/behavior specific to vmm to vmm.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The instance type. Required.
:vartype instance_type: str
@@ -27171,7 +29896,7 @@ def __init__(self, **kwargs: Any) -> None:
class VmmVirtualMachineDetails(HyperVVirtualMachineDetails):
"""VMM fabric provider specific VM settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -27271,7 +29996,7 @@ def __init__(
self.instance_type: str = "VmmVirtualMachine"
-class VMNicDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class VMNicDetails(_serialization.Model):
"""Hyper V VM network details.
:ivar nic_id: The nic Id.
@@ -27435,7 +30160,7 @@ def __init__(
self.target_nic_name = target_nic_name
-class VMNicInputDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class VMNicInputDetails(_serialization.Model):
"""Hyper V VM network input details.
:ivar nic_id: The nic Id.
@@ -27567,7 +30292,7 @@ def __init__(
class VmNicUpdatesTaskDetails(TaskTypeDetails):
"""This class represents the vm NicUpdates task details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The type of task details. Required.
:vartype instance_type: str
@@ -27611,7 +30336,7 @@ def __init__(
class VMwareCbtContainerCreationInput(ReplicationProviderSpecificContainerCreationInput):
"""VMwareCbt container creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -27634,7 +30359,7 @@ def __init__(self, **kwargs: Any) -> None:
class VMwareCbtContainerMappingInput(ReplicationProviderSpecificContainerMappingInput):
"""VMwareCbt container mapping input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -27708,12 +30433,12 @@ def __init__(
class VMwareCbtDiskInput(_serialization.Model):
"""VMwareCbt disk input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_id: The disk Id. Required.
:vartype disk_id: str
- :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar is_os_disk: A value indicating whether the disk is the OS disk. Required.
:vartype is_os_disk: str
@@ -27724,6 +30449,14 @@ class VMwareCbtDiskInput(_serialization.Model):
:vartype log_storage_account_sas_secret_name: str
:ivar disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:vartype disk_encryption_set_id: str
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -27740,6 +30473,10 @@ class VMwareCbtDiskInput(_serialization.Model):
"log_storage_account_id": {"key": "logStorageAccountId", "type": "str"},
"log_storage_account_sas_secret_name": {"key": "logStorageAccountSasSecretName", "type": "str"},
"disk_encryption_set_id": {"key": "diskEncryptionSetId", "type": "str"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -27751,13 +30488,17 @@ def __init__(
log_storage_account_sas_secret_name: str,
disk_type: Optional[Union[str, "_models.DiskAccountType"]] = None,
disk_encryption_set_id: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
:keyword disk_id: The disk Id. Required.
:paramtype disk_id: str
- :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword is_os_disk: A value indicating whether the disk is the OS disk. Required.
:paramtype is_os_disk: str
@@ -27768,6 +30509,14 @@ def __init__(
:paramtype log_storage_account_sas_secret_name: str
:keyword disk_encryption_set_id: The DiskEncryptionSet ARM Id.
:paramtype disk_encryption_set_id: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
@@ -27776,14 +30525,16 @@ def __init__(
self.log_storage_account_id = log_storage_account_id
self.log_storage_account_sas_secret_name = log_storage_account_sas_secret_name
self.disk_encryption_set_id = disk_encryption_set_id
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class VMwareCbtEnableMigrationInput(
- EnableMigrationProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class VMwareCbtEnableMigrationInput(EnableMigrationProviderSpecificInput):
"""VMwareCbt specific enable migration input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -27799,6 +30550,10 @@ class VMwareCbtEnableMigrationInput(
"NoLicenseType", "PAYG", and "AHUB".
:vartype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:ivar perform_sql_bulk_registration: A value indicating whether bulk SQL RP registration to be
done.
:vartype perform_sql_bulk_registration: str
@@ -27844,6 +30599,8 @@ class VMwareCbtEnableMigrationInput(
:vartype target_disk_tags: dict[str, str]
:ivar target_nic_tags: The tags for the target NICs.
:vartype target_nic_tags: dict[str, str]
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
"""
_validation = {
@@ -27862,6 +30619,7 @@ class VMwareCbtEnableMigrationInput(
"disks_to_include": {"key": "disksToInclude", "type": "[VMwareCbtDiskInput]"},
"license_type": {"key": "licenseType", "type": "str"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
"perform_sql_bulk_registration": {"key": "performSqlBulkRegistration", "type": "str"},
"data_mover_run_as_account_id": {"key": "dataMoverRunAsAccountId", "type": "str"},
"snapshot_run_as_account_id": {"key": "snapshotRunAsAccountId", "type": "str"},
@@ -27883,6 +30641,7 @@ class VMwareCbtEnableMigrationInput(
"seed_disk_tags": {"key": "seedDiskTags", "type": "{str}"},
"target_disk_tags": {"key": "targetDiskTags", "type": "{str}"},
"target_nic_tags": {"key": "targetNicTags", "type": "{str}"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
}
def __init__( # pylint: disable=too-many-locals
@@ -27896,6 +30655,7 @@ def __init__( # pylint: disable=too-many-locals
target_network_id: str,
license_type: Optional[Union[str, "_models.LicenseType"]] = None,
sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
perform_sql_bulk_registration: Optional[str] = None,
target_vm_name: Optional[str] = None,
target_vm_size: Optional[str] = None,
@@ -27913,6 +30673,7 @@ def __init__( # pylint: disable=too-many-locals
seed_disk_tags: Optional[Dict[str, str]] = None,
target_disk_tags: Optional[Dict[str, str]] = None,
target_nic_tags: Optional[Dict[str, str]] = None,
+ user_selected_os_name: Optional[str] = None,
**kwargs: Any
) -> None:
"""
@@ -27928,6 +30689,10 @@ def __init__( # pylint: disable=too-many-locals
"NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
:paramtype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:keyword perform_sql_bulk_registration: A value indicating whether bulk SQL RP registration to
be done.
:paramtype perform_sql_bulk_registration: str
@@ -27973,6 +30738,8 @@ def __init__( # pylint: disable=too-many-locals
:paramtype target_disk_tags: dict[str, str]
:keyword target_nic_tags: The tags for the target NICs.
:paramtype target_nic_tags: dict[str, str]
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
"""
super().__init__(**kwargs)
self.instance_type: str = "VMwareCbt"
@@ -27980,6 +30747,7 @@ def __init__( # pylint: disable=too-many-locals
self.disks_to_include = disks_to_include
self.license_type = license_type
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
self.perform_sql_bulk_registration = perform_sql_bulk_registration
self.data_mover_run_as_account_id = data_mover_run_as_account_id
self.snapshot_run_as_account_id = snapshot_run_as_account_id
@@ -28001,6 +30769,7 @@ def __init__( # pylint: disable=too-many-locals
self.seed_disk_tags = seed_disk_tags
self.target_disk_tags = target_disk_tags
self.target_nic_tags = target_nic_tags
+ self.user_selected_os_name = user_selected_os_name
class VMwareCbtEventDetails(EventProviderSpecificDetails):
@@ -28008,7 +30777,7 @@ class VMwareCbtEventDetails(EventProviderSpecificDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -28036,7 +30805,7 @@ def __init__(self, **kwargs: Any) -> None:
class VMwareCbtMigrateInput(MigrateProviderSpecificInput):
"""VMwareCbt specific migrate input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -28044,6 +30813,9 @@ class VMwareCbtMigrateInput(MigrateProviderSpecificInput):
:vartype perform_shutdown: str
:ivar os_upgrade_version: A value indicating the inplace OS Upgrade version.
:vartype os_upgrade_version: str
+ :ivar post_migration_steps: The managed run command script input.
+ :vartype post_migration_steps:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ManagedRunCommandScriptInput]
"""
_validation = {
@@ -28055,27 +30827,39 @@ class VMwareCbtMigrateInput(MigrateProviderSpecificInput):
"instance_type": {"key": "instanceType", "type": "str"},
"perform_shutdown": {"key": "performShutdown", "type": "str"},
"os_upgrade_version": {"key": "osUpgradeVersion", "type": "str"},
+ "post_migration_steps": {"key": "postMigrationSteps", "type": "[ManagedRunCommandScriptInput]"},
}
- def __init__(self, *, perform_shutdown: str, os_upgrade_version: Optional[str] = None, **kwargs: Any) -> None:
+ def __init__(
+ self,
+ *,
+ perform_shutdown: str,
+ os_upgrade_version: Optional[str] = None,
+ post_migration_steps: Optional[List["_models.ManagedRunCommandScriptInput"]] = None,
+ **kwargs: Any
+ ) -> None:
"""
:keyword perform_shutdown: A value indicating whether VM is to be shutdown. Required.
:paramtype perform_shutdown: str
:keyword os_upgrade_version: A value indicating the inplace OS Upgrade version.
:paramtype os_upgrade_version: str
+ :keyword post_migration_steps: The managed run command script input.
+ :paramtype post_migration_steps:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ManagedRunCommandScriptInput]
"""
super().__init__(**kwargs)
self.instance_type: str = "VMwareCbt"
self.perform_shutdown = perform_shutdown
self.os_upgrade_version = os_upgrade_version
+ self.post_migration_steps = post_migration_steps
-class VMwareCbtMigrationDetails(MigrationProviderSpecificSettings): # pylint: disable=too-many-instance-attributes
+class VMwareCbtMigrationDetails(MigrationProviderSpecificSettings):
"""VMwareCbt provider specific settings.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the instance type. Required.
:vartype instance_type: str
@@ -28093,6 +30877,10 @@ class VMwareCbtMigrationDetails(MigrationProviderSpecificSettings): # pylint: d
:vartype license_type: str
:ivar sql_server_license_type: The SQL Server license type.
:vartype sql_server_license_type: str
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:ivar data_mover_run_as_account_id: The data mover run as account Id.
:vartype data_mover_run_as_account_id: str
:ivar snapshot_run_as_account_id: The snapshot run as account Id.
@@ -28225,6 +31013,7 @@ class VMwareCbtMigrationDetails(MigrationProviderSpecificSettings): # pylint: d
"target_generation": {"key": "targetGeneration", "type": "str"},
"license_type": {"key": "licenseType", "type": "str"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
"data_mover_run_as_account_id": {"key": "dataMoverRunAsAccountId", "type": "str"},
"snapshot_run_as_account_id": {"key": "snapshotRunAsAccountId", "type": "str"},
"storage_account_id": {"key": "storageAccountId", "type": "str"},
@@ -28273,6 +31062,7 @@ def __init__( # pylint: disable=too-many-locals
*,
license_type: Optional[str] = None,
sql_server_license_type: Optional[str] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
target_vm_name: Optional[str] = None,
target_vm_size: Optional[str] = None,
target_resource_group_id: Optional[str] = None,
@@ -28299,6 +31089,10 @@ def __init__( # pylint: disable=too-many-locals
:paramtype license_type: str
:keyword sql_server_license_type: The SQL Server license type.
:paramtype sql_server_license_type: str
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
:keyword target_vm_name: Target VM name.
:paramtype target_vm_name: str
:keyword target_vm_size: The target VM size.
@@ -28350,6 +31144,7 @@ def __init__( # pylint: disable=too-many-locals
self.target_generation = None
self.license_type = license_type
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
self.data_mover_run_as_account_id = None
self.snapshot_run_as_account_id = None
self.storage_account_id = None
@@ -28393,7 +31188,7 @@ def __init__( # pylint: disable=too-many-locals
self.operation_name = None
-class VMwareCbtNicDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class VMwareCbtNicDetails(_serialization.Model):
"""VMwareCbt NIC details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -28519,7 +31314,7 @@ def __init__(
class VMwareCbtNicInput(_serialization.Model):
"""VMwareCbt NIC input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar nic_id: The NIC Id. Required.
:vartype nic_id: str
@@ -28601,7 +31396,7 @@ def __init__(
class VMwareCbtPolicyCreationInput(PolicyProviderSpecificInput):
"""VMware Cbt policy creation input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -28655,7 +31450,7 @@ def __init__(
class VmwareCbtPolicyDetails(PolicyProviderSpecificDetails):
"""VMware Cbt specific policy details.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -28705,7 +31500,7 @@ def __init__(
self.crash_consistent_frequency_in_minutes = crash_consistent_frequency_in_minutes
-class VMwareCbtProtectedDiskDetails(_serialization.Model): # pylint: disable=too-many-instance-attributes
+class VMwareCbtProtectedDiskDetails(_serialization.Model):
"""VMwareCbt protected disk details.
Variables are only populated by the server, and will be ignored when sending a request.
@@ -28714,8 +31509,8 @@ class VMwareCbtProtectedDiskDetails(_serialization.Model): # pylint: disable=to
:vartype disk_id: str
:ivar disk_name: The disk name.
:vartype disk_name: str
- :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :ivar disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:vartype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:ivar disk_path: The disk path.
:vartype disk_path: str
@@ -28743,6 +31538,14 @@ class VMwareCbtProtectedDiskDetails(_serialization.Model): # pylint: disable=to
:ivar gateway_operation_details: A value indicating the gateway operation details.
:vartype gateway_operation_details:
~azure.mgmt.recoveryservicessiterecovery.models.GatewayOperationDetails
+ :ivar sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :vartype sector_size_in_bytes: int
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -28777,6 +31580,10 @@ class VMwareCbtProtectedDiskDetails(_serialization.Model): # pylint: disable=to
"target_blob_uri": {"key": "targetBlobUri", "type": "str"},
"target_disk_name": {"key": "targetDiskName", "type": "str"},
"gateway_operation_details": {"key": "gatewayOperationDetails", "type": "GatewayOperationDetails"},
+ "sector_size_in_bytes": {"key": "sectorSizeInBytes", "type": "int"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
@@ -28784,14 +31591,26 @@ def __init__(
*,
disk_type: Optional[Union[str, "_models.DiskAccountType"]] = None,
target_disk_name: Optional[str] = None,
+ sector_size_in_bytes: Optional[int] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
**kwargs: Any
) -> None:
"""
- :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS", and
- "StandardSSD_LRS".
+ :keyword disk_type: The disk type. Known values are: "Standard_LRS", "Premium_LRS",
+ "StandardSSD_LRS", "PremiumV2_LRS", "UltraSSD_LRS", "StandardSSD_ZRS", and "Premium_ZRS".
:paramtype disk_type: str or ~azure.mgmt.recoveryservicessiterecovery.models.DiskAccountType
:keyword target_disk_name: The name for the target managed disk.
:paramtype target_disk_name: str
+ :keyword sector_size_in_bytes: The logical sector size (in bytes), 512 by default.
+ :paramtype sector_size_in_bytes: int
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = None
@@ -28809,14 +31628,20 @@ def __init__(
self.target_blob_uri = None
self.target_disk_name = target_disk_name
self.gateway_operation_details = None
+ self.sector_size_in_bytes = sector_size_in_bytes
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class VMwareCbtProtectionContainerMappingDetails(ProtectionContainerMappingProviderSpecificDetails):
+class VMwareCbtProtectionContainerMappingDetails(
+ ProtectionContainerMappingProviderSpecificDetails
+): # pylint: disable=name-too-long
"""VMwareCbt provider specific container mapping details.
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -28882,7 +31707,7 @@ def __init__(self, *, excluded_skus: Optional[List[str]] = None, **kwargs: Any)
class VMwareCbtResumeReplicationInput(ResumeReplicationProviderSpecificInput):
"""VMwareCbt specific resume replication input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -28913,7 +31738,7 @@ def __init__(self, *, delete_migration_resources: Optional[str] = None, **kwargs
class VMwareCbtResyncInput(ResyncProviderSpecificInput):
"""VMwareCbt specific resync input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -29011,7 +31836,7 @@ def __init__(
class VMwareCbtTestMigrateInput(TestMigrateProviderSpecificInput):
"""VMwareCbt specific test migrate input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -29023,6 +31848,9 @@ class VMwareCbtTestMigrateInput(TestMigrateProviderSpecificInput):
:vartype vm_nics: list[~azure.mgmt.recoveryservicessiterecovery.models.VMwareCbtNicInput]
:ivar os_upgrade_version: A value indicating the inplace OS Upgrade version.
:vartype os_upgrade_version: str
+ :ivar post_migration_steps: The managed run command script input.
+ :vartype post_migration_steps:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ManagedRunCommandScriptInput]
"""
_validation = {
@@ -29037,6 +31865,7 @@ class VMwareCbtTestMigrateInput(TestMigrateProviderSpecificInput):
"network_id": {"key": "networkId", "type": "str"},
"vm_nics": {"key": "vmNics", "type": "[VMwareCbtNicInput]"},
"os_upgrade_version": {"key": "osUpgradeVersion", "type": "str"},
+ "post_migration_steps": {"key": "postMigrationSteps", "type": "[ManagedRunCommandScriptInput]"},
}
def __init__(
@@ -29046,6 +31875,7 @@ def __init__(
network_id: str,
vm_nics: Optional[List["_models.VMwareCbtNicInput"]] = None,
os_upgrade_version: Optional[str] = None,
+ post_migration_steps: Optional[List["_models.ManagedRunCommandScriptInput"]] = None,
**kwargs: Any
) -> None:
"""
@@ -29057,6 +31887,9 @@ def __init__(
:paramtype vm_nics: list[~azure.mgmt.recoveryservicessiterecovery.models.VMwareCbtNicInput]
:keyword os_upgrade_version: A value indicating the inplace OS Upgrade version.
:paramtype os_upgrade_version: str
+ :keyword post_migration_steps: The managed run command script input.
+ :paramtype post_migration_steps:
+ list[~azure.mgmt.recoveryservicessiterecovery.models.ManagedRunCommandScriptInput]
"""
super().__init__(**kwargs)
self.instance_type: str = "VMwareCbt"
@@ -29064,12 +31897,13 @@ def __init__(
self.network_id = network_id
self.vm_nics = vm_nics
self.os_upgrade_version = os_upgrade_version
+ self.post_migration_steps = post_migration_steps
class VMwareCbtUpdateDiskInput(_serialization.Model):
"""VMwareCbt disk input for update.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar disk_id: The disk Id. Required.
:vartype disk_id: str
@@ -29077,6 +31911,12 @@ class VMwareCbtUpdateDiskInput(_serialization.Model):
:vartype target_disk_name: str
:ivar is_os_disk: A value indicating whether the disk is the OS disk.
:vartype is_os_disk: str
+ :ivar iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :vartype iops: int
+ :ivar throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :vartype throughput_in_mbps: int
+ :ivar disk_size_in_gb: The target disk size in GB.
+ :vartype disk_size_in_gb: int
"""
_validation = {
@@ -29087,10 +31927,21 @@ class VMwareCbtUpdateDiskInput(_serialization.Model):
"disk_id": {"key": "diskId", "type": "str"},
"target_disk_name": {"key": "targetDiskName", "type": "str"},
"is_os_disk": {"key": "isOSDisk", "type": "str"},
+ "iops": {"key": "iops", "type": "int"},
+ "throughput_in_mbps": {"key": "throughputInMbps", "type": "int"},
+ "disk_size_in_gb": {"key": "diskSizeInGB", "type": "int"},
}
def __init__(
- self, *, disk_id: str, target_disk_name: Optional[str] = None, is_os_disk: Optional[str] = None, **kwargs: Any
+ self,
+ *,
+ disk_id: str,
+ target_disk_name: Optional[str] = None,
+ is_os_disk: Optional[str] = None,
+ iops: Optional[int] = None,
+ throughput_in_mbps: Optional[int] = None,
+ disk_size_in_gb: Optional[int] = None,
+ **kwargs: Any
) -> None:
"""
:keyword disk_id: The disk Id. Required.
@@ -29099,19 +31950,26 @@ def __init__(
:paramtype target_disk_name: str
:keyword is_os_disk: A value indicating whether the disk is the OS disk.
:paramtype is_os_disk: str
+ :keyword iops: The number of IOPS allowed for Premium V2 and Ultra disks.
+ :paramtype iops: int
+ :keyword throughput_in_mbps: The total throughput in Mbps for Premium V2 and Ultra disks.
+ :paramtype throughput_in_mbps: int
+ :keyword disk_size_in_gb: The target disk size in GB.
+ :paramtype disk_size_in_gb: int
"""
super().__init__(**kwargs)
self.disk_id = disk_id
self.target_disk_name = target_disk_name
self.is_os_disk = is_os_disk
+ self.iops = iops
+ self.throughput_in_mbps = throughput_in_mbps
+ self.disk_size_in_gb = disk_size_in_gb
-class VMwareCbtUpdateMigrationItemInput(
- UpdateMigrationItemProviderSpecificInput
-): # pylint: disable=too-many-instance-attributes
+class VMwareCbtUpdateMigrationItemInput(UpdateMigrationItemProviderSpecificInput):
"""VMwareCbt specific update migration item input.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: The class type. Required.
:vartype instance_type: str
@@ -29146,6 +32004,12 @@ class VMwareCbtUpdateMigrationItemInput(
"NoLicenseType", "PAYG", and "AHUB".
:vartype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :ivar linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :vartype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :ivar user_selected_os_name: The OS name selected by user.
+ :vartype user_selected_os_name: str
:ivar perform_auto_resync: A value indicating whether auto resync is to be done.
:vartype perform_auto_resync: str
:ivar target_vm_tags: The target VM tags.
@@ -29175,6 +32039,8 @@ class VMwareCbtUpdateMigrationItemInput(
"vm_disks": {"key": "vmDisks", "type": "[VMwareCbtUpdateDiskInput]"},
"license_type": {"key": "licenseType", "type": "str"},
"sql_server_license_type": {"key": "sqlServerLicenseType", "type": "str"},
+ "linux_license_type": {"key": "linuxLicenseType", "type": "str"},
+ "user_selected_os_name": {"key": "userSelectedOSName", "type": "str"},
"perform_auto_resync": {"key": "performAutoResync", "type": "str"},
"target_vm_tags": {"key": "targetVmTags", "type": "{str}"},
"target_disk_tags": {"key": "targetDiskTags", "type": "{str}"},
@@ -29197,6 +32063,8 @@ def __init__(
vm_disks: Optional[List["_models.VMwareCbtUpdateDiskInput"]] = None,
license_type: Optional[Union[str, "_models.LicenseType"]] = None,
sql_server_license_type: Optional[Union[str, "_models.SqlServerLicenseType"]] = None,
+ linux_license_type: Optional[Union[str, "_models.LinuxLicenseType"]] = None,
+ user_selected_os_name: Optional[str] = None,
perform_auto_resync: Optional[str] = None,
target_vm_tags: Optional[Dict[str, str]] = None,
target_disk_tags: Optional[Dict[str, str]] = None,
@@ -29235,6 +32103,12 @@ def __init__(
"NotSpecified", "NoLicenseType", "PAYG", and "AHUB".
:paramtype sql_server_license_type: str or
~azure.mgmt.recoveryservicessiterecovery.models.SqlServerLicenseType
+ :keyword linux_license_type: The license type for Linux VM's. Known values are: "NotSpecified",
+ "NoLicenseType", and "LinuxServer".
+ :paramtype linux_license_type: str or
+ ~azure.mgmt.recoveryservicessiterecovery.models.LinuxLicenseType
+ :keyword user_selected_os_name: The OS name selected by user.
+ :paramtype user_selected_os_name: str
:keyword perform_auto_resync: A value indicating whether auto resync is to be done.
:paramtype perform_auto_resync: str
:keyword target_vm_tags: The target VM tags.
@@ -29259,16 +32133,18 @@ def __init__(
self.vm_disks = vm_disks
self.license_type = license_type
self.sql_server_license_type = sql_server_license_type
+ self.linux_license_type = linux_license_type
+ self.user_selected_os_name = user_selected_os_name
self.perform_auto_resync = perform_auto_resync
self.target_vm_tags = target_vm_tags
self.target_disk_tags = target_disk_tags
self.target_nic_tags = target_nic_tags
-class VMwareDetails(FabricSpecificDetails): # pylint: disable=too-many-instance-attributes
+class VMwareDetails(FabricSpecificDetails):
"""Store the fabric details specific to the VMware fabric.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -29538,7 +32414,7 @@ def __init__( # pylint: disable=too-many-locals
class VMwareV2FabricCreationInput(FabricSpecificCreationInput):
"""VMwareV2 fabric provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Required.
:vartype instance_type: str
@@ -29590,7 +32466,7 @@ class VMwareV2FabricSpecificDetails(FabricSpecificDetails):
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 Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
@@ -29646,10 +32522,10 @@ def __init__(self, **kwargs: Any) -> None:
self.process_servers = None
-class VMwareVirtualMachineDetails(ConfigurationSettings): # pylint: disable=too-many-instance-attributes
+class VMwareVirtualMachineDetails(ConfigurationSettings):
"""VMware provider specific settings.
- All required parameters must be populated in order to send to Azure.
+ All required parameters must be populated in order to send to server.
:ivar instance_type: Gets the class type. Overridden in derived classes. Required.
:vartype instance_type: str
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_site_recovery_management_client_enums.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_site_recovery_management_client_enums.py
index c2eb730484de..9f7c81b92e4e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_site_recovery_management_client_enums.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/models/_site_recovery_management_client_enums.py
@@ -91,6 +91,14 @@ class ChurnOptionSelected(str, Enum, metaclass=CaseInsensitiveEnumMeta):
HIGH = "High"
+class ClusterRecoveryPointType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
+ """The recovery point type."""
+
+ NOT_SPECIFIED = "NotSpecified"
+ APPLICATION_CONSISTENT = "ApplicationConsistent"
+ CRASH_CONSISTENT = "CrashConsistent"
+
+
class DataSyncStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta):
"""The data sync option."""
@@ -106,11 +114,15 @@ class DisableProtectionReason(str, Enum, metaclass=CaseInsensitiveEnumMeta):
class DiskAccountType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
- """The DiskType."""
+ """The disk type."""
STANDARD_LRS = "Standard_LRS"
PREMIUM_LRS = "Premium_LRS"
STANDARD_SSD_LRS = "StandardSSD_LRS"
+ PREMIUM_V2_LRS = "PremiumV2_LRS"
+ ULTRA_SSD_LRS = "UltraSSD_LRS"
+ STANDARD_SSD_ZRS = "StandardSSD_ZRS"
+ PREMIUM_ZRS = "Premium_ZRS"
class DiskReplicationProgressHealth(str, Enum, metaclass=CaseInsensitiveEnumMeta):
@@ -123,6 +135,15 @@ class DiskReplicationProgressHealth(str, Enum, metaclass=CaseInsensitiveEnumMeta
QUEUED = "Queued"
+class DiskState(str, Enum, metaclass=CaseInsensitiveEnumMeta):
+ """The disk state."""
+
+ UNAVAILABLE = "Unavailable"
+ INITIAL_REPLICATION_PENDING = "InitialReplicationPending"
+ INITIAL_REPLICATION_FAILED = "InitialReplicationFailed"
+ PROTECTED = "Protected"
+
+
class EthernetAddressType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
"""The source IP address type."""
@@ -152,6 +173,13 @@ class FailoverDeploymentModel(str, Enum, metaclass=CaseInsensitiveEnumMeta):
RESOURCE_MANAGER = "ResourceManager"
+class FailoverDirection(str, Enum, metaclass=CaseInsensitiveEnumMeta):
+ """Failover direction."""
+
+ PRIMARY_TO_RECOVERY = "PrimaryToRecovery"
+ RECOVERY_TO_PRIMARY = "RecoveryToPrimary"
+
+
class HealthErrorCategory(str, Enum, metaclass=CaseInsensitiveEnumMeta):
"""The category of the health error."""
@@ -207,6 +235,14 @@ class LicenseType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
WINDOWS_SERVER = "WindowsServer"
+class LinuxLicenseType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
+ """The license type for Linux VM's."""
+
+ NOT_SPECIFIED = "NotSpecified"
+ NO_LICENSE_TYPE = "NoLicenseType"
+ LINUX_SERVER = "LinuxServer"
+
+
class MigrationItemOperation(str, Enum, metaclass=CaseInsensitiveEnumMeta):
"""MigrationItemOperation."""
@@ -395,6 +431,13 @@ class RpInMageRecoveryPointType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
CUSTOM = "Custom"
+class SecurityConfiguration(str, Enum, metaclass=CaseInsensitiveEnumMeta):
+ """Security configuration state."""
+
+ DISABLED = "Disabled"
+ ENABLED = "Enabled"
+
+
class SecurityType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
"""The target VM security type."""
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/__init__.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/__init__.py
index b7fd6eae9142..d7db9ef85a31 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/__init__.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/__init__.py
@@ -5,38 +5,47 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+# pylint: disable=wrong-import-position
-from ._operations import Operations
-from ._replication_alert_settings_operations import ReplicationAlertSettingsOperations
-from ._replication_appliances_operations import ReplicationAppliancesOperations
-from ._replication_eligibility_results_operations import ReplicationEligibilityResultsOperations
-from ._replication_events_operations import ReplicationEventsOperations
-from ._replication_fabrics_operations import ReplicationFabricsOperations
-from ._replication_logical_networks_operations import ReplicationLogicalNetworksOperations
-from ._replication_networks_operations import ReplicationNetworksOperations
-from ._replication_network_mappings_operations import ReplicationNetworkMappingsOperations
-from ._replication_protection_containers_operations import ReplicationProtectionContainersOperations
-from ._replication_migration_items_operations import ReplicationMigrationItemsOperations
-from ._migration_recovery_points_operations import MigrationRecoveryPointsOperations
-from ._replication_protectable_items_operations import ReplicationProtectableItemsOperations
-from ._replication_protected_items_operations import ReplicationProtectedItemsOperations
-from ._recovery_points_operations import RecoveryPointsOperations
-from ._target_compute_sizes_operations import TargetComputeSizesOperations
-from ._replication_protection_container_mappings_operations import ReplicationProtectionContainerMappingsOperations
-from ._replication_recovery_services_providers_operations import ReplicationRecoveryServicesProvidersOperations
-from ._replication_storage_classifications_operations import ReplicationStorageClassificationsOperations
-from ._replication_storage_classification_mappings_operations import ReplicationStorageClassificationMappingsOperations
-from ._replicationv_centers_operations import ReplicationvCentersOperations
-from ._replication_jobs_operations import ReplicationJobsOperations
-from ._replication_policies_operations import ReplicationPoliciesOperations
-from ._replication_protection_intents_operations import ReplicationProtectionIntentsOperations
-from ._replication_recovery_plans_operations import ReplicationRecoveryPlansOperations
-from ._supported_operating_systems_operations import SupportedOperatingSystemsOperations
-from ._replication_vault_health_operations import ReplicationVaultHealthOperations
-from ._replication_vault_setting_operations import ReplicationVaultSettingOperations
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._patch import * # pylint: disable=unused-wildcard-import
+
+from ._operations import Operations # type: ignore
+from ._replication_alert_settings_operations import ReplicationAlertSettingsOperations # type: ignore
+from ._replication_appliances_operations import ReplicationAppliancesOperations # type: ignore
+from ._replication_eligibility_results_operations import ReplicationEligibilityResultsOperations # type: ignore
+from ._replication_events_operations import ReplicationEventsOperations # type: ignore
+from ._replication_fabrics_operations import ReplicationFabricsOperations # type: ignore
+from ._replication_logical_networks_operations import ReplicationLogicalNetworksOperations # type: ignore
+from ._replication_networks_operations import ReplicationNetworksOperations # type: ignore
+from ._replication_network_mappings_operations import ReplicationNetworkMappingsOperations # type: ignore
+from ._replication_protection_containers_operations import ReplicationProtectionContainersOperations # type: ignore
+from ._replication_migration_items_operations import ReplicationMigrationItemsOperations # type: ignore
+from ._migration_recovery_points_operations import MigrationRecoveryPointsOperations # type: ignore
+from ._replication_protectable_items_operations import ReplicationProtectableItemsOperations # type: ignore
+from ._replication_protected_items_operations import ReplicationProtectedItemsOperations # type: ignore
+from ._recovery_points_operations import RecoveryPointsOperations # type: ignore
+from ._target_compute_sizes_operations import TargetComputeSizesOperations # type: ignore
+from ._replication_protection_clusters_operations import ReplicationProtectionClustersOperations # type: ignore
+from ._cluster_recovery_points_operations import ClusterRecoveryPointsOperations # type: ignore
+from ._cluster_recovery_point_operations import ClusterRecoveryPointOperations # type: ignore
+from ._replication_protection_container_mappings_operations import ReplicationProtectionContainerMappingsOperations # type: ignore
+from ._replication_recovery_services_providers_operations import ReplicationRecoveryServicesProvidersOperations # type: ignore
+from ._replication_storage_classifications_operations import ReplicationStorageClassificationsOperations # type: ignore
+from ._replication_storage_classification_mappings_operations import ReplicationStorageClassificationMappingsOperations # type: ignore
+from ._replicationv_centers_operations import ReplicationvCentersOperations # type: ignore
+from ._replication_jobs_operations import ReplicationJobsOperations # type: ignore
+from ._replication_policies_operations import ReplicationPoliciesOperations # type: ignore
+from ._replication_protection_intents_operations import ReplicationProtectionIntentsOperations # type: ignore
+from ._replication_recovery_plans_operations import ReplicationRecoveryPlansOperations # type: ignore
+from ._supported_operating_systems_operations import SupportedOperatingSystemsOperations # type: ignore
+from ._replication_vault_health_operations import ReplicationVaultHealthOperations # type: ignore
+from ._replication_vault_setting_operations import ReplicationVaultSettingOperations # type: ignore
from ._patch import __all__ as _patch_all
-from ._patch import * # pylint: disable=unused-wildcard-import
+from ._patch import *
from ._patch import patch_sdk as _patch_sdk
__all__ = [
@@ -56,6 +65,9 @@
"ReplicationProtectedItemsOperations",
"RecoveryPointsOperations",
"TargetComputeSizesOperations",
+ "ReplicationProtectionClustersOperations",
+ "ClusterRecoveryPointsOperations",
+ "ClusterRecoveryPointOperations",
"ReplicationProtectionContainerMappingsOperations",
"ReplicationRecoveryServicesProvidersOperations",
"ReplicationStorageClassificationsOperations",
@@ -69,5 +81,5 @@
"ReplicationVaultHealthOperations",
"ReplicationVaultSettingOperations",
]
-__all__.extend([p for p in _patch_all if p not in __all__])
+__all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore
_patch_sdk()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_point_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_point_operations.py
new file mode 100644
index 000000000000..e1fdf2ec6f18
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_point_operations.py
@@ -0,0 +1,189 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import sys
+from typing import Any, Callable, Dict, Optional, TypeVar
+
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ map_error,
+)
+from azure.core.pipeline import PipelineResponse
+from azure.core.rest import HttpRequest, HttpResponse
+from azure.core.tracing.decorator import distributed_trace
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+
+from .. import models as _models
+from .._serialization import Serializer
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+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_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ recovery_point_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/recoveryPoints/{recoveryPointName}",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "recoveryPointName": _SERIALIZER.url(
+ "recovery_point_name", recovery_point_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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)
+
+
+class ClusterRecoveryPointOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.SiteRecoveryManagementClient`'s
+ :attr:`cluster_recovery_point` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs):
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace
+ def get(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ recovery_point_name: str,
+ **kwargs: Any
+ ) -> _models.ClusterRecoveryPoint:
+ """Gets a recovery point.
+
+ Get the details of specified recovery point.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param recovery_point_name: The recovery point name. Required.
+ :type recovery_point_name: str
+ :return: ClusterRecoveryPoint or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint
+ :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.ClusterRecoveryPoint] = kwargs.pop("cls", None)
+
+ _request = build_get_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ recovery_point_name=recovery_point_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ClusterRecoveryPoint", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_points_operations.py
new file mode 100644
index 000000000000..a0df58253bf2
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_cluster_recovery_points_operations.py
@@ -0,0 +1,211 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import sys
+from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
+import urllib.parse
+
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ map_error,
+)
+from azure.core.paging import ItemPaged
+from azure.core.pipeline import PipelineResponse
+from azure.core.rest import HttpRequest, HttpResponse
+from azure.core.tracing.decorator import distributed_trace
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+
+from .. import models as _models
+from .._serialization import Serializer
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+T = TypeVar("T")
+ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
+
+_SERIALIZER = Serializer()
+_SERIALIZER.client_side_validation = False
+
+
+def build_list_by_replication_protection_cluster_request( # pylint: disable=name-too-long
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/recoveryPoints",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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)
+
+
+class ClusterRecoveryPointsOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.SiteRecoveryManagementClient`'s
+ :attr:`cluster_recovery_points` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs):
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace
+ def list_by_replication_protection_cluster(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> Iterable["_models.ClusterRecoveryPoint"]:
+ """Gets the list of cluster recovery points.
+
+ The list of cluster recovery points.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An iterator like instance of either ClusterRecoveryPoint or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ClusterRecoveryPoint]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ClusterRecoveryPointCollection] = 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_replication_protection_cluster_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ else:
+ # make call to next link with the client's api-version
+ _parsed_next_link = urllib.parse.urlparse(next_link)
+ _next_request_params = case_insensitive_dict(
+ {
+ key: [urllib.parse.quote(v) for v in value]
+ for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items()
+ }
+ )
+ _next_request_params["api-version"] = self._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("ClusterRecoveryPointCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, iter(list_of_elem)
+
+ def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return ItemPaged(get_next, extract_data)
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_migration_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_migration_recovery_points_operations.py
index 40e4fa83be9d..0b99ebca3249 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_migration_recovery_points_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_migration_recovery_points_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,19 +38,19 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_migration_items_request(
+def build_list_by_replication_migration_items_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -57,8 +59,8 @@ def build_list_by_replication_migration_items_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -81,15 +83,15 @@ def build_get_request(
protection_container_name: str,
migration_item_name: str,
migration_recovery_point_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -98,8 +100,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -153,7 +155,6 @@ def list_by_replication_migration_items(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationRecoveryPoint or the result of
cls(response)
:rtype:
@@ -166,7 +167,7 @@ def list_by_replication_migration_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationRecoveryPointCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -177,20 +178,18 @@ def list_by_replication_migration_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_migration_items_request(
+ _request = build_list_by_replication_migration_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_migration_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -202,13 +201,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationRecoveryPointCollection", pipeline_response)
@@ -218,11 +216,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -234,10 +232,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_migration_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints"
- }
-
@distributed_trace
def get(
self,
@@ -259,12 +253,11 @@ def get(
:type migration_item_name: str
:param migration_recovery_point_name: The migration recovery point name. Required.
:type migration_recovery_point_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: MigrationRecoveryPoint or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.MigrationRecoveryPoint
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -278,25 +271,23 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationRecoveryPoint] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
migration_recovery_point_name=migration_recovery_point_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -305,13 +296,9 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("MigrationRecoveryPoint", pipeline_response)
+ deserialized = self._deserialize("MigrationRecoveryPoint", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrationRecoveryPoints/{migrationRecoveryPointName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_operations.py
index 2cd14b8614c1..9e8eb78af2e7 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,7 +42,7 @@ def build_list_request(resource_group_name: str, subscription_id: str, **kwargs:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -89,7 +91,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.OperationsDiscovery"]:
Operation to return the list of available operations.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either OperationsDiscovery or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.OperationsDiscovery]
@@ -101,7 +102,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.OperationsDiscovery"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.OperationsDiscoveryCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -112,16 +113,14 @@ def list(self, **kwargs: Any) -> Iterable["_models.OperationsDiscovery"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -133,13 +132,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("OperationsDiscoveryCollection", pipeline_response)
@@ -149,11 +147,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -164,7 +162,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/operations"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_recovery_points_operations.py
index d6b9fa6ef69a..85e924c35989 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_recovery_points_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_recovery_points_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,19 +38,19 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protected_items_request(
+def build_list_by_replication_protected_items_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -57,8 +59,8 @@ def build_list_by_replication_protected_items_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -83,15 +85,15 @@ def build_get_request(
protection_container_name: str,
replicated_protected_item_name: str,
recovery_point_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -100,8 +102,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -155,7 +157,6 @@ def list_by_replication_protected_items(
:type protection_container_name: str
:param replicated_protected_item_name: The replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryPoint or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPoint]
@@ -167,7 +168,7 @@ def list_by_replication_protected_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPointCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -178,20 +179,18 @@ def list_by_replication_protected_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protected_items_request(
+ _request = build_list_by_replication_protected_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protected_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -203,13 +202,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryPointCollection", pipeline_response)
@@ -219,11 +217,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -235,10 +233,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_protected_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints"
- }
-
@distributed_trace
def get(
self,
@@ -260,12 +254,11 @@ def get(
:type replicated_protected_item_name: str
:param recovery_point_name: The recovery point name. Required.
:type recovery_point_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryPoint or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPoint
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -279,25 +272,23 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPoint] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
recovery_point_name=recovery_point_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -306,13 +297,9 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryPoint", pipeline_response)
+ deserialized = self._deserialize("RecoveryPoint", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_alert_settings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_alert_settings_operations.py
index 2d4915d07ef6..e18675a07fe8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_alert_settings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_alert_settings_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,6 +6,7 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
+import sys
from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, overload
import urllib.parse
@@ -20,16 +20,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -38,12 +40,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -52,8 +54,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -69,12 +71,12 @@ def build_list_request(
def build_get_request(
- alert_setting_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ alert_setting_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -83,8 +85,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"alertSettingName": _SERIALIZER.url("alert_setting_name", alert_setting_name, "str"),
}
@@ -101,12 +103,12 @@ def build_get_request(
def build_create_request(
- alert_setting_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ alert_setting_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -116,8 +118,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"alertSettingName": _SERIALIZER.url("alert_setting_name", alert_setting_name, "str"),
}
@@ -160,7 +162,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.Alert"]:
Gets the list of email notification(alert) configurations for the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Alert or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Alert]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -171,7 +172,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.Alert"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.AlertCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -182,17 +183,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.Alert"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -204,13 +203,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("AlertCollection", pipeline_response)
@@ -220,11 +218,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -236,10 +234,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings"
- }
-
@distributed_trace
def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
"""Gets an email notification(alert) configuration.
@@ -248,12 +242,11 @@ def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
:param alert_setting_name: The name of the email notification configuration. Required.
:type alert_setting_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -267,22 +260,20 @@ def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Alert] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
alert_setting_name=alert_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -291,16 +282,12 @@ def get(self, alert_setting_name: str, **kwargs: Any) -> _models.Alert:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Alert", pipeline_response)
+ deserialized = self._deserialize("Alert", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}"
- }
+ return deserialized # type: ignore
@overload
def create(
@@ -322,7 +309,6 @@ def create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
@@ -330,7 +316,7 @@ def create(
@overload
def create(
- self, alert_setting_name: str, request: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, alert_setting_name: str, request: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> _models.Alert:
"""Configures email notifications for this vault.
@@ -339,11 +325,10 @@ def create(
:param alert_setting_name: The name of the email notification(alert) configuration. Required.
:type alert_setting_name: str
:param request: The input to configure the email notification(alert). Required.
- :type request: IO
+ :type request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
@@ -351,7 +336,7 @@ def create(
@distributed_trace
def create(
- self, alert_setting_name: str, request: Union[_models.ConfigureAlertRequest, IO], **kwargs: Any
+ self, alert_setting_name: str, request: Union[_models.ConfigureAlertRequest, IO[bytes]], **kwargs: Any
) -> _models.Alert:
"""Configures email notifications for this vault.
@@ -360,17 +345,14 @@ def create(
:param alert_setting_name: The name of the email notification(alert) configuration. Required.
:type alert_setting_name: str
:param request: The input to configure the email notification(alert). Is either a
- ConfigureAlertRequest type or a IO type. Required.
- :type request: ~azure.mgmt.recoveryservicessiterecovery.models.ConfigureAlertRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
+ ConfigureAlertRequest type or a IO[bytes] type. Required.
+ :type request: ~azure.mgmt.recoveryservicessiterecovery.models.ConfigureAlertRequest or
+ IO[bytes]
:return: Alert or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Alert
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -393,25 +375,23 @@ def create(
else:
_json = self._serialize.body(request, "ConfigureAlertRequest")
- request = build_create_request(
+ _request = build_create_request(
alert_setting_name=alert_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self.create.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -420,13 +400,9 @@ def create(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Alert", pipeline_response)
+ deserialized = self._deserialize("Alert", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_appliances_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_appliances_operations.py
index d32c37a3a16a..c04e117dac78 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_appliances_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_appliances_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -37,12 +39,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any
+ resource_group_name: str, resource_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -51,8 +53,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAppliances",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -96,7 +98,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationAppliance or the result of
cls(response)
:rtype:
@@ -109,7 +110,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ApplianceCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -120,18 +121,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -143,13 +142,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ApplianceCollection", pipeline_response)
@@ -159,11 +157,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -174,7 +172,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAppliances"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_eligibility_results_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_eligibility_results_operations.py
index 45e23489d83f..ab2d59821d80 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_eligibility_results_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_eligibility_results_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Optional, TypeVar
from azure.core.exceptions import (
@@ -17,16 +17,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,7 +42,7 @@ def build_list_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -71,7 +73,7 @@ def build_get_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -123,12 +125,11 @@ def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationE
:param virtual_machine_name: Virtual Machine name. Required.
:type virtual_machine_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationEligibilityResultsCollection or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationEligibilityResultsCollection
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -142,21 +143,19 @@ def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationE
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationEligibilityResultsCollection] = kwargs.pop("cls", None)
- request = build_list_request(
+ _request = build_list_request(
virtual_machine_name=virtual_machine_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -165,16 +164,12 @@ def list(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationE
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationEligibilityResultsCollection", pipeline_response)
+ deserialized = self._deserialize("ReplicationEligibilityResultsCollection", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults"
- }
+ return deserialized # type: ignore
@distributed_trace
def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationEligibilityResults:
@@ -184,12 +179,11 @@ def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationEl
:param virtual_machine_name: Virtual Machine name. Required.
:type virtual_machine_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationEligibilityResults or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationEligibilityResults
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -203,21 +197,19 @@ def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationEl
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationEligibilityResults] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
virtual_machine_name=virtual_machine_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -226,13 +218,9 @@ def get(self, virtual_machine_name: str, **kwargs: Any) -> _models.ReplicationEl
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationEligibilityResults", pipeline_response)
+ deserialized = self._deserialize("ReplicationEligibilityResults", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}/providers/Microsoft.RecoveryServices/replicationEligibilityResults/default"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_events_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_events_operations.py
index d3e9a50e2f0c..eea0f7e25e15 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_events_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_events_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -37,12 +39,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any
+ resource_group_name: str, resource_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -51,8 +53,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -70,12 +72,12 @@ def build_list_request(
def build_get_request(
- event_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ event_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -84,8 +86,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"eventName": _SERIALIZER.url("event_name", event_name, "str"),
}
@@ -128,7 +130,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Event or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Event]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -139,7 +140,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.EventCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -150,18 +151,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -173,13 +172,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("EventCollection", pipeline_response)
@@ -189,11 +187,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -205,10 +203,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents"
- }
-
@distributed_trace
def get(self, event_name: str, **kwargs: Any) -> _models.Event:
"""Get the details of an Azure Site recovery event.
@@ -217,12 +211,11 @@ def get(self, event_name: str, **kwargs: Any) -> _models.Event:
:param event_name: The name of the Azure Site Recovery event. Required.
:type event_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Event or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Event
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -236,22 +229,20 @@ def get(self, event_name: str, **kwargs: Any) -> _models.Event:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Event] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
event_name=event_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -260,13 +251,9 @@ def get(self, event_name: str, **kwargs: Any) -> _models.Event:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Event", pipeline_response)
+ deserialized = self._deserialize("Event", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_fabrics_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_fabrics_operations.py
index 2dc3d779acf8..62bd2f73f613 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_fabrics_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_fabrics_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,12 +45,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +59,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -72,8 +77,8 @@ def build_list_request(
def build_get_request(
fabric_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
filter: Optional[str] = None,
@@ -82,7 +87,7 @@ def build_get_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -91,8 +96,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -111,12 +116,12 @@ def build_get_request(
def build_create_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -126,8 +131,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -146,19 +151,19 @@ def build_create_request(
def build_purge_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -172,12 +177,12 @@ def build_purge_request(
def build_check_consistency_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -186,8 +191,8 @@ def build_check_consistency_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -204,19 +209,19 @@ def build_check_consistency_request(
def build_migrate_to_aad_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -230,12 +235,12 @@ def build_migrate_to_aad_request(
def build_reassociate_gateway_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -245,8 +250,8 @@ def build_reassociate_gateway_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -265,19 +270,19 @@ def build_reassociate_gateway_request(
def build_delete_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -291,12 +296,12 @@ def build_delete_request(
def build_renew_certificate_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -306,8 +311,8 @@ def build_renew_certificate_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -331,7 +336,7 @@ def build_remove_infra_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -386,7 +391,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.Fabric"]:
Gets a list of the Azure Site Recovery fabrics in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Fabric or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -397,7 +401,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.Fabric"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.FabricCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -408,17 +412,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.Fabric"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -430,13 +432,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("FabricCollection", pipeline_response)
@@ -446,11 +447,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -462,10 +463,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics"
- }
-
@distributed_trace
def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: Any) -> _models.Fabric:
"""Gets the details of an ASR fabric.
@@ -476,12 +473,11 @@ def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: Any) ->
:type fabric_name: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Fabric or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Fabric
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -495,23 +491,21 @@ def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: Any) ->
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Fabric] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -520,21 +514,17 @@ def get(self, fabric_name: str, filter: Optional[str] = None, **kwargs: Any) ->
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
def _create_initial(
- self, fabric_name: str, input: Union[_models.FabricCreationInput, IO], **kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ self, fabric_name: str, input: Union[_models.FabricCreationInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -547,7 +537,7 @@ def _create_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -557,45 +547,42 @@ def _create_initial(
else:
_json = self._serialize.body(input, "FabricCreationInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -617,14 +604,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -632,7 +611,7 @@ def begin_create(
@overload
def begin_create(
- self, fabric_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, fabric_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Fabric]:
"""Creates an Azure Site Recovery fabric.
@@ -641,18 +620,10 @@ def begin_create(
:param fabric_name: Name of the ASR fabric. Required.
:type fabric_name: str
:param input: Fabric creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -660,7 +631,7 @@ def begin_create(
@distributed_trace
def begin_create(
- self, fabric_name: str, input: Union[_models.FabricCreationInput, IO], **kwargs: Any
+ self, fabric_name: str, input: Union[_models.FabricCreationInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Fabric]:
"""Creates an Azure Site Recovery fabric.
@@ -668,20 +639,9 @@ def begin_create(
:param fabric_name: Name of the ASR fabric. Required.
:type fabric_name: str
- :param input: Fabric creation input. Is either a FabricCreationInput type or a IO type.
+ :param input: Fabric creation input. Is either a FabricCreationInput type or a IO[bytes] type.
Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.FabricCreationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.FabricCreationInput or IO[bytes]
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -706,12 +666,13 @@ def begin_create(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -721,20 +682,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return LROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _purge_initial(self, fabric_name: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements
- error_map = {
+ def _purge_initial(self, fabric_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -746,38 +705,41 @@ def _purge_initial(self, fabric_name: str, **kwargs: Any) -> None: # pylint: di
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_purge(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -787,14 +749,6 @@ def begin_purge(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
:param fabric_name: ASR fabric to purge. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -808,7 +762,7 @@ def begin_purge(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
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._purge_initial( # type: ignore
+ raw_result = self._purge_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -816,11 +770,12 @@ def begin_purge(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -829,20 +784,16 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> Optional[_models.Fabric]:
- error_map = {
+ def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -854,44 +805,41 @@ def _check_consistency_initial(self, fabric_name: str, **kwargs: Any) -> Optiona
_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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_check_consistency_request(
+ _request = build_check_consistency_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._check_consistency_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _check_consistency_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> LROPoller[_models.Fabric]:
@@ -901,14 +849,6 @@ def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> LROPoller[
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -930,12 +870,13 @@ def begin_check_consistency(self, fabric_name: str, **kwargs: Any) -> LROPoller[
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -945,22 +886,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_check_consistency.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency"
- }
+ return LROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _migrate_to_aad_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _migrate_to_aad_initial(self, fabric_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -972,38 +909,41 @@ def _migrate_to_aad_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_migrate_to_aad_request(
+ _request = build_migrate_to_aad_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._migrate_to_aad_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _migrate_to_aad_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -1013,14 +953,6 @@ def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> LROPoller[Non
:param fabric_name: ASR fabric to migrate. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1034,7 +966,7 @@ def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> LROPoller[Non
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._migrate_to_aad_initial( # type: ignore
+ raw_result = self._migrate_to_aad_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -1042,11 +974,12 @@ def begin_migrate_to_aad(self, fabric_name: str, **kwargs: Any) -> LROPoller[Non
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1055,25 +988,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_migrate_to_aad.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _reassociate_gateway_initial(
self,
fabric_name: str,
- failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO],
+ failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1086,7 +1015,7 @@ def _reassociate_gateway_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1096,45 +1025,42 @@ def _reassociate_gateway_initial(
else:
_json = self._serialize.body(failover_process_server_request, "FailoverProcessServerRequest")
- request = build_reassociate_gateway_request(
+ _request = build_reassociate_gateway_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._reassociate_gateway_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _reassociate_gateway_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway"
- }
+ return deserialized # type: ignore
@overload
def begin_reassociate_gateway(
@@ -1158,14 +1084,6 @@ def begin_reassociate_gateway(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1175,7 +1093,7 @@ def begin_reassociate_gateway(
def begin_reassociate_gateway(
self,
fabric_name: str,
- failover_process_server_request: IO,
+ failover_process_server_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1188,18 +1106,10 @@ def begin_reassociate_gateway(
:type fabric_name: str
:param failover_process_server_request: The input to the failover process server operation.
Required.
- :type failover_process_server_request: IO
+ :type failover_process_server_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1209,7 +1119,7 @@ def begin_reassociate_gateway(
def begin_reassociate_gateway(
self,
fabric_name: str,
- failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO],
+ failover_process_server_request: Union[_models.FailoverProcessServerRequest, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.Fabric]:
"""Perform failover of the process server.
@@ -1219,20 +1129,9 @@ def begin_reassociate_gateway(
:param fabric_name: The name of the fabric containing the process server. Required.
:type fabric_name: str
:param failover_process_server_request: The input to the failover process server operation. Is
- either a FailoverProcessServerRequest type or a IO type. Required.
+ either a FailoverProcessServerRequest type or a IO[bytes] type. Required.
:type failover_process_server_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.FailoverProcessServerRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.FailoverProcessServerRequest or IO[bytes]
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1257,12 +1156,13 @@ def begin_reassociate_gateway(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1272,22 +1172,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reassociate_gateway.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway"
- }
+ return LROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, fabric_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1299,38 +1195,41 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -1340,14 +1239,6 @@ def begin_delete(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
:param fabric_name: ASR fabric to delete. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1361,7 +1252,7 @@ def begin_delete(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -1369,11 +1260,12 @@ def begin_delete(self, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1382,22 +1274,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _renew_certificate_initial(
- self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO], **kwargs: Any
- ) -> Optional[_models.Fabric]:
- error_map = {
+ self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1410,7 +1298,7 @@ def _renew_certificate_initial(
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[Optional[_models.Fabric]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1420,45 +1308,42 @@ def _renew_certificate_initial(
else:
_json = self._serialize.body(renew_certificate, "RenewCertificateInput")
- request = build_renew_certificate_request(
+ _request = build_renew_certificate_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._renew_certificate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Fabric", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _renew_certificate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate"
- }
+ return deserialized # type: ignore
@overload
def begin_renew_certificate(
@@ -1480,14 +1365,6 @@ def begin_renew_certificate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1495,7 +1372,7 @@ def begin_renew_certificate(
@overload
def begin_renew_certificate(
- self, fabric_name: str, renew_certificate: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, fabric_name: str, renew_certificate: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Fabric]:
"""Renews certificate for the fabric.
@@ -1504,18 +1381,10 @@ def begin_renew_certificate(
:param fabric_name: fabric name to renew certs for. Required.
:type fabric_name: str
:param renew_certificate: Renew certificate input. Required.
- :type renew_certificate: IO
+ :type renew_certificate: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1523,7 +1392,7 @@ def begin_renew_certificate(
@distributed_trace
def begin_renew_certificate(
- self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO], **kwargs: Any
+ self, fabric_name: str, renew_certificate: Union[_models.RenewCertificateInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Fabric]:
"""Renews certificate for the fabric.
@@ -1532,20 +1401,9 @@ def begin_renew_certificate(
:param fabric_name: fabric name to renew certs for. Required.
:type fabric_name: str
:param renew_certificate: Renew certificate input. Is either a RenewCertificateInput type or a
- IO type. Required.
+ IO[bytes] type. Required.
:type renew_certificate: ~azure.mgmt.recoveryservicessiterecovery.models.RenewCertificateInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either Fabric or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Fabric]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1570,12 +1428,13 @@ def begin_renew_certificate(
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("Fabric", pipeline_response)
+ deserialized = self._deserialize("Fabric", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1585,22 +1444,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Fabric].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_renew_certificate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate"
- }
+ return LROPoller[_models.Fabric](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _remove_infra_initial( # pylint: disable=inconsistent-return-statements
- self, resource_name: str, fabric_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _remove_infra_initial(self, resource_name: str, fabric_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1612,29 +1467,32 @@ def _remove_infra_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_remove_infra_request(
+ _request = build_remove_infra_request(
resource_name=resource_name,
fabric_name=fabric_name,
resource_group_name=self._config.resource_group_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._remove_infra_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [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)
@@ -1642,12 +1500,12 @@ def _remove_infra_initial( # pylint: disable=inconsistent-return-statements
response_headers = {}
response_headers["Location"] = self._deserialize("str", response.headers.get("Location"))
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, response_headers)
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _remove_infra_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/removeInfra"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -1659,14 +1517,6 @@ def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwargs: Any
:type resource_name: str
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1680,7 +1530,7 @@ def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwargs: Any
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._remove_infra_initial( # type: ignore
+ raw_result = self._remove_infra_initial(
resource_name=resource_name,
fabric_name=fabric_name,
api_version=api_version,
@@ -1689,11 +1539,12 @@ def begin_remove_infra(self, resource_name: str, fabric_name: str, **kwargs: Any
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1702,14 +1553,10 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_remove_infra.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/removeInfra"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_jobs_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_jobs_operations.py
index 126d92397d7f..146e7a588f6b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_jobs_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_jobs_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +16,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +31,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,12 +44,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any
+ resource_group_name: str, resource_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +58,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -73,12 +77,12 @@ def build_list_request(
def build_get_request(
- job_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ job_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -87,8 +91,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"jobName": _SERIALIZER.url("job_name", job_name, "str"),
}
@@ -105,12 +109,12 @@ def build_get_request(
def build_cancel_request(
- job_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ job_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -119,8 +123,8 @@ def build_cancel_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"jobName": _SERIALIZER.url("job_name", job_name, "str"),
}
@@ -137,12 +141,12 @@ def build_cancel_request(
def build_restart_request(
- job_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ job_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -151,8 +155,8 @@ def build_restart_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"jobName": _SERIALIZER.url("job_name", job_name, "str"),
}
@@ -169,12 +173,12 @@ def build_restart_request(
def build_resume_request(
- job_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ job_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -184,8 +188,8 @@ def build_resume_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"jobName": _SERIALIZER.url("job_name", job_name, "str"),
}
@@ -204,12 +208,12 @@ def build_resume_request(
def build_export_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -219,8 +223,8 @@ def build_export_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -264,7 +268,6 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Job or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -275,7 +278,7 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.JobCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -286,18 +289,16 @@ def list(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -309,13 +310,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("JobCollection", pipeline_response)
@@ -325,11 +325,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -341,10 +341,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs"
- }
-
@distributed_trace
def get(self, job_name: str, **kwargs: Any) -> _models.Job:
"""Gets the job details.
@@ -353,12 +349,11 @@ def get(self, job_name: str, **kwargs: Any) -> _models.Job:
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Job or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Job
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -372,22 +367,20 @@ def get(self, job_name: str, **kwargs: Any) -> _models.Job:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Job] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -396,19 +389,15 @@ def get(self, job_name: str, **kwargs: Any) -> _models.Job:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}"
- }
+ return deserialized # type: ignore
- def _cancel_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job]:
- error_map = {
+ def _cancel_initial(self, job_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -420,44 +409,41 @@ def _cancel_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job]
_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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_cancel_request(
+ _request = build_cancel_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_cancel(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
@@ -467,14 +453,6 @@ def begin_cancel(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -496,12 +474,13 @@ def begin_cancel(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -511,20 +490,16 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
+ return LROPoller[_models.Job](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- begin_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel"
- }
-
- def _restart_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job]:
- error_map = {
+ def _restart_initial(self, job_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -536,44 +511,41 @@ def _restart_initial(self, job_name: str, **kwargs: Any) -> Optional[_models.Job
_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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_restart_request(
+ _request = build_restart_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._restart_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _restart_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_restart(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
@@ -583,14 +555,6 @@ def begin_restart(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
:param job_name: Job identifier. Required.
:type job_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -612,12 +576,13 @@ def begin_restart(self, job_name: str, **kwargs: Any) -> LROPoller[_models.Job]:
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -627,22 +592,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_restart.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart"
- }
+ return LROPoller[_models.Job](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _resume_initial(
- self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO], **kwargs: Any
- ) -> Optional[_models.Job]:
- error_map = {
+ self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -655,7 +616,7 @@ def _resume_initial(
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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -665,45 +626,42 @@ def _resume_initial(
else:
_json = self._serialize.body(resume_job_params, "ResumeJobParams")
- request = build_resume_request(
+ _request = build_resume_request(
job_name=job_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resume_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _resume_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume"
- }
+ return deserialized # type: ignore
@overload
def begin_resume(
@@ -725,14 +683,6 @@ def begin_resume(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -740,7 +690,7 @@ def begin_resume(
@overload
def begin_resume(
- self, job_name: str, resume_job_params: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, job_name: str, resume_job_params: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Job]:
"""Resumes the specified job.
@@ -749,18 +699,10 @@ def begin_resume(
:param job_name: Job identifier. Required.
:type job_name: str
:param resume_job_params: Resume rob comments. Required.
- :type resume_job_params: IO
+ :type resume_job_params: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -768,7 +710,7 @@ def begin_resume(
@distributed_trace
def begin_resume(
- self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO], **kwargs: Any
+ self, job_name: str, resume_job_params: Union[_models.ResumeJobParams, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Job]:
"""Resumes the specified job.
@@ -776,20 +718,10 @@ def begin_resume(
:param job_name: Job identifier. Required.
:type job_name: str
- :param resume_job_params: Resume rob comments. Is either a ResumeJobParams type or a IO type.
- Required.
- :type resume_job_params: ~azure.mgmt.recoveryservicessiterecovery.models.ResumeJobParams or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param resume_job_params: Resume rob comments. Is either a ResumeJobParams type or a IO[bytes]
+ type. Required.
+ :type resume_job_params: ~azure.mgmt.recoveryservicessiterecovery.models.ResumeJobParams or
+ IO[bytes]
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -814,12 +746,13 @@ def begin_resume(
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -829,22 +762,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resume.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume"
- }
+ return LROPoller[_models.Job](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _export_initial(
- self, job_query_parameter: Union[_models.JobQueryParameter, IO], **kwargs: Any
- ) -> Optional[_models.Job]:
- error_map = {
+ self, job_query_parameter: Union[_models.JobQueryParameter, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -857,7 +786,7 @@ def _export_initial(
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[Optional[_models.Job]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -867,44 +796,41 @@ def _export_initial(
else:
_json = self._serialize.body(job_query_parameter, "JobQueryParameter")
- request = build_export_request(
- resource_name=self._config.resource_name,
+ _request = build_export_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._export_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Job", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _export_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export"
- }
+ return deserialized # type: ignore
@overload
def begin_export(
@@ -919,14 +845,6 @@ def begin_export(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -934,25 +852,17 @@ def begin_export(
@overload
def begin_export(
- self, job_query_parameter: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, job_query_parameter: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Job]:
"""Exports the details of the Azure Site Recovery jobs of the vault.
The operation to export the details of the Azure Site Recovery jobs of the vault.
:param job_query_parameter: job query filter. Required.
- :type job_query_parameter: IO
+ :type job_query_parameter: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -960,27 +870,16 @@ def begin_export(
@distributed_trace
def begin_export(
- self, job_query_parameter: Union[_models.JobQueryParameter, IO], **kwargs: Any
+ self, job_query_parameter: Union[_models.JobQueryParameter, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Job]:
"""Exports the details of the Azure Site Recovery jobs of the vault.
The operation to export the details of the Azure Site Recovery jobs of the vault.
- :param job_query_parameter: job query filter. Is either a JobQueryParameter type or a IO type.
- Required.
+ :param job_query_parameter: job query filter. Is either a JobQueryParameter type or a IO[bytes]
+ type. Required.
:type job_query_parameter: ~azure.mgmt.recoveryservicessiterecovery.models.JobQueryParameter or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either Job or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Job]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1004,12 +903,13 @@ def begin_export(
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("Job", pipeline_response)
+ deserialized = self._deserialize("Job", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1019,14 +919,10 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Job].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_export.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export"
- }
+ return LROPoller[_models.Job](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_logical_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_logical_networks_operations.py
index 9c6e2c957528..8f9fd2c312ab 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_logical_networks_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_logical_networks_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,13 +38,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -51,8 +53,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -71,15 +73,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
logical_network_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -88,8 +90,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"logicalNetworkName": _SERIALIZER.url("logical_network_name", logical_network_name, "str"),
@@ -133,7 +135,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
:param fabric_name: Server Id. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either LogicalNetwork or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.LogicalNetwork]
@@ -145,7 +146,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.LogicalNetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -156,18 +157,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -179,13 +178,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("LogicalNetworkCollection", pipeline_response)
@@ -195,11 +193,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -211,10 +209,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks"
- }
-
@distributed_trace
def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any) -> _models.LogicalNetwork:
"""Gets a logical network with specified server id and logical network name.
@@ -225,12 +219,11 @@ def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any) -> _mo
:type fabric_name: str
:param logical_network_name: Logical network name. Required.
:type logical_network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: LogicalNetwork or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.LogicalNetwork
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -244,23 +237,21 @@ def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any) -> _mo
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.LogicalNetwork] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
logical_network_name=logical_network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -269,13 +260,9 @@ def get(self, fabric_name: str, logical_network_name: str, **kwargs: Any) -> _mo
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("LogicalNetwork", pipeline_response)
+ deserialized = self._deserialize("LogicalNetwork", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_migration_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_migration_items_operations.py
index d12af685aafd..652d0d42813a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_migration_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_migration_items_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,11 +44,11 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protection_containers_request(
+def build_list_by_replication_protection_containers_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
skip_token: Optional[str] = None,
@@ -54,7 +59,7 @@ def build_list_by_replication_protection_containers_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -63,8 +68,8 @@ def build_list_by_replication_protection_containers_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -91,15 +96,15 @@ def build_get_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -108,8 +113,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -131,15 +136,15 @@ def build_create_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -149,8 +154,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -174,8 +179,8 @@ def build_delete_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
delete_option: Optional[str] = None,
@@ -183,15 +188,15 @@ def build_delete_request(
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -212,15 +217,15 @@ def build_update_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -230,8 +235,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -255,15 +260,15 @@ def build_migrate_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -273,8 +278,8 @@ def build_migrate_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -298,15 +303,15 @@ def build_pause_replication_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -316,8 +321,8 @@ def build_pause_replication_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -341,15 +346,15 @@ def build_resume_replication_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -359,8 +364,8 @@ def build_resume_replication_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -384,15 +389,15 @@ def build_resync_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -402,8 +407,8 @@ def build_resync_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -427,15 +432,15 @@ def build_test_migrate_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -445,8 +450,8 @@ def build_test_migrate_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -470,15 +475,15 @@ def build_test_migrate_cleanup_request(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -488,8 +493,8 @@ def build_test_migrate_cleanup_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -510,8 +515,8 @@ def build_test_migrate_cleanup_request(
def build_list_request(
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
skip_token: Optional[str] = None,
@@ -522,7 +527,7 @@ def build_list_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -531,8 +536,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -573,7 +578,7 @@ def __init__(self, *args, **kwargs):
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self,
fabric_name: str,
protection_container_name: str,
@@ -596,7 +601,6 @@ def list_by_replication_protection_containers(
:type take_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationItem or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem]
@@ -608,7 +612,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -619,22 +623,20 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
filter=filter,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -646,13 +648,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationItemCollection", pipeline_response)
@@ -662,11 +663,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -678,10 +679,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems"
- }
-
@distributed_trace
def get(
self, fabric_name: str, protection_container_name: str, migration_item_name: str, **kwargs: Any
@@ -696,12 +693,11 @@ def get(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: MigrationItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -715,24 +711,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -741,26 +735,22 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.EnableMigrationInput, IO],
+ input: Union[_models.EnableMigrationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -773,7 +763,7 @@ def _create_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -783,47 +773,44 @@ def _create_initial(
else:
_json = self._serialize.body(input, "EnableMigrationInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -851,14 +838,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -872,7 +851,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -888,18 +867,10 @@ def begin_create(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Enable migration input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -913,7 +884,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.EnableMigrationInput, IO],
+ input: Union[_models.EnableMigrationInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Enables migration.
@@ -926,20 +897,9 @@ def begin_create(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Enable migration input. Is either a EnableMigrationInput type or a IO type.
- Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableMigrationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Enable migration input. Is either a EnableMigrationInput type or a IO[bytes]
+ type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableMigrationInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -968,12 +928,13 @@ def begin_create(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -983,27 +944,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
+ def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
delete_option: Optional[str] = None,
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1015,41 +974,44 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
delete_option=delete_option,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(
@@ -1072,14 +1034,6 @@ def begin_delete(
:type migration_item_name: str
:param delete_option: The delete option. Default value is None.
:type delete_option: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1093,7 +1047,7 @@ def begin_delete(
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
@@ -1104,11 +1058,12 @@ def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1117,27 +1072,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.UpdateMigrationItemInput, IO],
+ input: Union[_models.UpdateMigrationItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1150,7 +1101,7 @@ def _update_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1160,47 +1111,44 @@ def _update_initial(
else:
_json = self._serialize.body(input, "UpdateMigrationItemInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -1228,14 +1176,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1249,7 +1189,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1265,18 +1205,10 @@ def begin_update(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Update migration item input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1290,7 +1222,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.UpdateMigrationItemInput, IO],
+ input: Union[_models.UpdateMigrationItemInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Updates migration item.
@@ -1303,20 +1235,10 @@ def begin_update(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Update migration item input. Is either a UpdateMigrationItemInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMigrationItemInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update migration item input. Is either a UpdateMigrationItemInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMigrationItemInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1345,12 +1267,13 @@ def begin_update(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1360,27 +1283,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _migrate_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: Union[_models.MigrateInput, IO],
+ migrate_input: Union[_models.MigrateInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1393,7 +1314,7 @@ def _migrate_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1403,47 +1324,44 @@ def _migrate_initial(
else:
_json = self._serialize.body(migrate_input, "MigrateInput")
- request = build_migrate_request(
+ _request = build_migrate_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._migrate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _migrate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate"
- }
+ return deserialized # type: ignore
@overload
def begin_migrate(
@@ -1471,14 +1389,6 @@ def begin_migrate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1492,7 +1402,7 @@ def begin_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: IO,
+ migrate_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1508,18 +1418,10 @@ def begin_migrate(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param migrate_input: Migrate input. Required.
- :type migrate_input: IO
+ :type migrate_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1533,7 +1435,7 @@ def begin_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- migrate_input: Union[_models.MigrateInput, IO],
+ migrate_input: Union[_models.MigrateInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Migrate item.
@@ -1546,19 +1448,9 @@ def begin_migrate(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param migrate_input: Migrate input. Is either a MigrateInput type or a IO type. Required.
- :type migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.MigrateInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param migrate_input: Migrate input. Is either a MigrateInput type or a IO[bytes] type.
+ Required.
+ :type migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.MigrateInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1587,12 +1479,13 @@ def begin_migrate(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1602,27 +1495,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_migrate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _pause_replication_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: Union[_models.PauseReplicationInput, IO],
+ pause_replication_input: Union[_models.PauseReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1635,7 +1526,7 @@ def _pause_replication_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1645,47 +1536,44 @@ def _pause_replication_initial(
else:
_json = self._serialize.body(pause_replication_input, "PauseReplicationInput")
- request = build_pause_replication_request(
+ _request = build_pause_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._pause_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _pause_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication"
- }
+ return deserialized # type: ignore
@overload
def begin_pause_replication(
@@ -1714,14 +1602,6 @@ def begin_pause_replication(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1735,7 +1615,7 @@ def begin_pause_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: IO,
+ pause_replication_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1751,18 +1631,10 @@ def begin_pause_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param pause_replication_input: Pause replication input. Required.
- :type pause_replication_input: IO
+ :type pause_replication_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1776,7 +1648,7 @@ def begin_pause_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- pause_replication_input: Union[_models.PauseReplicationInput, IO],
+ pause_replication_input: Union[_models.PauseReplicationInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Pause replication.
@@ -1790,20 +1662,9 @@ def begin_pause_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param pause_replication_input: Pause replication input. Is either a PauseReplicationInput type
- or a IO type. Required.
+ or a IO[bytes] type. Required.
:type pause_replication_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.PauseReplicationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.PauseReplicationInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1832,12 +1693,13 @@ def begin_pause_replication(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1847,27 +1709,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_pause_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _resume_replication_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: Union[_models.ResumeReplicationInput, IO],
+ resume_replication_input: Union[_models.ResumeReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1880,7 +1740,7 @@ def _resume_replication_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1890,47 +1750,44 @@ def _resume_replication_initial(
else:
_json = self._serialize.body(resume_replication_input, "ResumeReplicationInput")
- request = build_resume_replication_request(
+ _request = build_resume_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resume_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _resume_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication"
- }
+ return deserialized # type: ignore
@overload
def begin_resume_replication(
@@ -1959,14 +1816,6 @@ def begin_resume_replication(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -1980,7 +1829,7 @@ def begin_resume_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: IO,
+ resume_replication_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1996,18 +1845,10 @@ def begin_resume_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param resume_replication_input: Resume replication input. Required.
- :type resume_replication_input: IO
+ :type resume_replication_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2021,7 +1862,7 @@ def begin_resume_replication(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- resume_replication_input: Union[_models.ResumeReplicationInput, IO],
+ resume_replication_input: Union[_models.ResumeReplicationInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Resume replication.
@@ -2035,20 +1876,9 @@ def begin_resume_replication(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param resume_replication_input: Resume replication input. Is either a ResumeReplicationInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type resume_replication_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.ResumeReplicationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.ResumeReplicationInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2077,12 +1907,13 @@ def begin_resume_replication(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2092,27 +1923,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resume_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _resync_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.ResyncInput, IO],
+ input: Union[_models.ResyncInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2125,7 +1954,7 @@ def _resync_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2135,47 +1964,44 @@ def _resync_initial(
else:
_json = self._serialize.body(input, "ResyncInput")
- request = build_resync_request(
+ _request = build_resync_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resync_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _resync_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync"
- }
+ return deserialized # type: ignore
@overload
def begin_resync(
@@ -2203,14 +2029,6 @@ def begin_resync(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2224,7 +2042,7 @@ def begin_resync(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2240,18 +2058,10 @@ def begin_resync(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param input: Resync input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2265,7 +2075,7 @@ def begin_resync(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- input: Union[_models.ResyncInput, IO],
+ input: Union[_models.ResyncInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Resynchronizes replication.
@@ -2278,19 +2088,8 @@ def begin_resync(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param input: Resync input. Is either a ResyncInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.ResyncInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Resync input. Is either a ResyncInput type or a IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.ResyncInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2319,12 +2118,13 @@ def begin_resync(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2334,27 +2134,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resync.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_migrate_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: Union[_models.TestMigrateInput, IO],
+ test_migrate_input: Union[_models.TestMigrateInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2367,7 +2165,7 @@ def _test_migrate_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2377,47 +2175,44 @@ def _test_migrate_initial(
else:
_json = self._serialize.body(test_migrate_input, "TestMigrateInput")
- request = build_test_migrate_request(
+ _request = build_test_migrate_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_migrate_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_migrate_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate"
- }
+ return deserialized # type: ignore
@overload
def begin_test_migrate(
@@ -2445,14 +2240,6 @@ def begin_test_migrate(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2466,7 +2253,7 @@ def begin_test_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: IO,
+ test_migrate_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2482,18 +2269,10 @@ def begin_test_migrate(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_input: Test migrate input. Required.
- :type test_migrate_input: IO
+ :type test_migrate_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2507,7 +2286,7 @@ def begin_test_migrate(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_input: Union[_models.TestMigrateInput, IO],
+ test_migrate_input: Union[_models.TestMigrateInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Test migrate item.
@@ -2520,21 +2299,10 @@ def begin_test_migrate(
:type protection_container_name: str
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
- :param test_migrate_input: Test migrate input. Is either a TestMigrateInput type or a IO type.
- Required.
+ :param test_migrate_input: Test migrate input. Is either a TestMigrateInput type or a IO[bytes]
+ type. Required.
:type test_migrate_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2563,12 +2331,13 @@ def begin_test_migrate(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2578,27 +2347,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_migrate.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_migrate_cleanup_initial(
self,
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO],
+ test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.MigrationItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2611,7 +2378,7 @@ def _test_migrate_cleanup_initial(
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[Optional[_models.MigrationItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2621,47 +2388,44 @@ def _test_migrate_cleanup_initial(
else:
_json = self._serialize.body(test_migrate_cleanup_input, "TestMigrateCleanupInput")
- request = build_test_migrate_cleanup_request(
+ _request = build_test_migrate_cleanup_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
migration_item_name=migration_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_migrate_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("MigrationItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_migrate_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup"
- }
+ return deserialized # type: ignore
@overload
def begin_test_migrate_cleanup(
@@ -2690,14 +2454,6 @@ def begin_test_migrate_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2711,7 +2467,7 @@ def begin_test_migrate_cleanup(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: IO,
+ test_migrate_cleanup_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2727,18 +2483,10 @@ def begin_test_migrate_cleanup(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_cleanup_input: Test migrate cleanup input. Required.
- :type test_migrate_cleanup_input: IO
+ :type test_migrate_cleanup_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2752,7 +2500,7 @@ def begin_test_migrate_cleanup(
fabric_name: str,
protection_container_name: str,
migration_item_name: str,
- test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO],
+ test_migrate_cleanup_input: Union[_models.TestMigrateCleanupInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.MigrationItem]:
"""Test migrate cleanup.
@@ -2766,20 +2514,9 @@ def begin_test_migrate_cleanup(
:param migration_item_name: Migration item name. Required.
:type migration_item_name: str
:param test_migrate_cleanup_input: Test migrate cleanup input. Is either a
- TestMigrateCleanupInput type or a IO type. Required.
+ TestMigrateCleanupInput type or a IO[bytes] type. Required.
:type test_migrate_cleanup_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateCleanupInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.TestMigrateCleanupInput or IO[bytes]
:return: An instance of LROPoller that returns either MigrationItem or the result of
cls(response)
:rtype:
@@ -2808,12 +2545,13 @@ def begin_test_migrate_cleanup(
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("MigrationItem", pipeline_response)
+ deserialized = self._deserialize("MigrationItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2823,17 +2561,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.MigrationItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_migrate_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup"
- }
+ return LROPoller[_models.MigrationItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(
@@ -2853,7 +2589,6 @@ def list(
:type take_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either MigrationItem or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.MigrationItem]
@@ -2865,7 +2600,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.MigrationItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2876,20 +2611,18 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -2901,13 +2634,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("MigrationItemCollection", pipeline_response)
@@ -2917,11 +2649,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -2932,7 +2664,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_network_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_network_mappings_operations.py
index 00037350745c..7acdf848f036 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_network_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_network_mappings_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,18 +44,18 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_networks_request(
+def build_list_by_replication_networks_request( # pylint: disable=name-too-long
fabric_name: str,
network_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -59,8 +64,8 @@ def build_list_by_replication_networks_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -81,15 +86,15 @@ def build_get_request(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -98,8 +103,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -121,15 +126,15 @@ def build_create_request(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -139,8 +144,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -164,22 +169,22 @@ def build_delete_request(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -198,15 +203,15 @@ def build_update_request(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -216,8 +221,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -238,12 +243,12 @@ def build_update_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -252,8 +257,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -299,7 +304,6 @@ def list_by_replication_networks(
:type fabric_name: str
:param network_name: Primary network name. Required.
:type network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either NetworkMapping or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping]
@@ -311,7 +315,7 @@ def list_by_replication_networks(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -322,19 +326,17 @@ def list_by_replication_networks(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_networks_request(
+ _request = build_list_by_replication_networks_request(
fabric_name=fabric_name,
network_name=network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_networks.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -346,13 +348,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkMappingCollection", pipeline_response)
@@ -362,11 +363,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -378,10 +379,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_networks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings"
- }
-
@distributed_trace
def get(
self, fabric_name: str, network_name: str, network_mapping_name: str, **kwargs: Any
@@ -396,12 +393,11 @@ def get(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: NetworkMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -415,24 +411,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -441,26 +435,22 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.CreateNetworkMappingInput, IO],
+ input: Union[_models.CreateNetworkMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.NetworkMapping]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -473,7 +463,7 @@ def _create_initial(
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[Optional[_models.NetworkMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -483,47 +473,44 @@ def _create_initial(
else:
_json = self._serialize.body(input, "CreateNetworkMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -551,14 +538,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -572,7 +551,7 @@ def begin_create(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -588,18 +567,10 @@ def begin_create(
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
:param input: Create network mapping input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -613,7 +584,7 @@ def begin_create(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.CreateNetworkMappingInput, IO],
+ input: Union[_models.CreateNetworkMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.NetworkMapping]:
"""Creates network mapping.
@@ -626,20 +597,10 @@ def begin_create(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :param input: Create network mapping input. Is either a CreateNetworkMappingInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateNetworkMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Create network mapping input. Is either a CreateNetworkMappingInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateNetworkMappingInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -668,12 +629,13 @@ def begin_create(
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("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -683,22 +645,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.NetworkMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return LROPoller[_models.NetworkMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
+ def _delete_initial(
self, fabric_name: str, network_name: str, network_mapping_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -710,40 +670,43 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(
@@ -759,14 +722,6 @@ def begin_delete(
:type network_name: str
:param network_mapping_name: ARM Resource Name for network mapping. Required.
:type network_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -780,7 +735,7 @@ def begin_delete(
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
@@ -790,11 +745,12 @@ def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -803,27 +759,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
self,
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.UpdateNetworkMappingInput, IO],
+ input: Union[_models.UpdateNetworkMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.NetworkMapping]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -836,7 +788,7 @@ def _update_initial(
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[Optional[_models.NetworkMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -846,47 +798,44 @@ def _update_initial(
else:
_json = self._serialize.body(input, "UpdateNetworkMappingInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
network_name=network_name,
network_mapping_name=network_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("NetworkMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -914,14 +863,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -935,7 +876,7 @@ def begin_update(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -951,18 +892,10 @@ def begin_update(
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
:param input: Update network mapping input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -976,7 +909,7 @@ def begin_update(
fabric_name: str,
network_name: str,
network_mapping_name: str,
- input: Union[_models.UpdateNetworkMappingInput, IO],
+ input: Union[_models.UpdateNetworkMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.NetworkMapping]:
"""Updates network mapping.
@@ -989,20 +922,10 @@ def begin_update(
:type network_name: str
:param network_mapping_name: Network mapping name. Required.
:type network_mapping_name: str
- :param input: Update network mapping input. Is either a UpdateNetworkMappingInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateNetworkMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update network mapping input. Is either a UpdateNetworkMappingInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateNetworkMappingInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either NetworkMapping or the result of
cls(response)
:rtype:
@@ -1031,12 +954,13 @@ def begin_update(
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("NetworkMapping", pipeline_response)
+ deserialized = self._deserialize("NetworkMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1046,17 +970,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.NetworkMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}"
- }
+ return LROPoller[_models.NetworkMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.NetworkMapping"]:
@@ -1064,7 +986,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.NetworkMapping"]:
Lists all ASR network mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either NetworkMapping or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.NetworkMapping]
@@ -1076,7 +997,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.NetworkMapping"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1087,17 +1008,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.NetworkMapping"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1109,13 +1028,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkMappingCollection", pipeline_response)
@@ -1125,11 +1043,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1140,7 +1058,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_networks_operations.py
index 6552dc2a9ad4..35594da9d177 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_networks_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_networks_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,13 +38,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -51,8 +53,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -71,15 +73,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
network_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -88,8 +90,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"networkName": _SERIALIZER.url("network_name", network_name, "str"),
@@ -107,12 +109,12 @@ def build_get_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -121,8 +123,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -164,7 +166,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Network or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Network]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -175,7 +176,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -186,18 +187,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -209,13 +208,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkCollection", pipeline_response)
@@ -225,11 +223,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -241,10 +239,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks"
- }
-
@distributed_trace
def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _models.Network:
"""Gets a network with specified server id and network name.
@@ -255,12 +249,11 @@ def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _models.Net
:type fabric_name: str
:param network_name: Primary network name. Required.
:type network_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Network or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Network
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -274,23 +267,21 @@ def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _models.Net
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Network] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
network_name=network_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -299,16 +290,12 @@ def get(self, fabric_name: str, network_name: str, **kwargs: Any) -> _models.Net
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Network", pipeline_response)
+ deserialized = self._deserialize("Network", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.Network"]:
@@ -316,7 +303,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.Network"]:
Lists the networks available in a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Network or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Network]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -327,7 +313,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.Network"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.NetworkCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -338,17 +324,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.Network"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -360,13 +344,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("NetworkCollection", pipeline_response)
@@ -376,11 +359,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -391,7 +374,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_policies_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_policies_operations.py
index 4cf95c3c3d7b..1ee367d29bc5 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_policies_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_policies_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +16,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +31,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,12 +44,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +58,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -71,12 +75,12 @@ def build_list_request(
def build_get_request(
- policy_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ policy_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -85,8 +89,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"policyName": _SERIALIZER.url("policy_name", policy_name, "str"),
}
@@ -103,12 +107,12 @@ def build_get_request(
def build_create_request(
- policy_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ policy_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -118,8 +122,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"policyName": _SERIALIZER.url("policy_name", policy_name, "str"),
}
@@ -138,19 +142,19 @@ def build_create_request(
def build_delete_request(
- policy_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ policy_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"policyName": _SERIALIZER.url("policy_name", policy_name, "str"),
}
@@ -164,12 +168,12 @@ def build_delete_request(
def build_update_request(
- policy_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ policy_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -179,8 +183,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"policyName": _SERIALIZER.url("policy_name", policy_name, "str"),
}
@@ -223,7 +227,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.Policy"]:
Lists the replication policies for a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either Policy or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -234,7 +237,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.Policy"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.PolicyCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -245,17 +248,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.Policy"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -267,13 +268,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("PolicyCollection", pipeline_response)
@@ -283,11 +283,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -299,10 +299,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies"
- }
-
@distributed_trace
def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
"""Gets the requested policy.
@@ -311,12 +307,11 @@ def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: Policy or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.Policy
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -330,22 +325,20 @@ def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.Policy] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -354,21 +347,17 @@ def get(self, policy_name: str, **kwargs: Any) -> _models.Policy:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
def _create_initial(
- self, policy_name: str, input: Union[_models.CreatePolicyInput, IO], **kwargs: Any
- ) -> Optional[_models.Policy]:
- error_map = {
+ self, policy_name: str, input: Union[_models.CreatePolicyInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -381,7 +370,7 @@ def _create_initial(
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[Optional[_models.Policy]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -391,45 +380,42 @@ def _create_initial(
else:
_json = self._serialize.body(input, "CreatePolicyInput")
- request = build_create_request(
+ _request = build_create_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -451,14 +437,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -466,7 +444,7 @@ def begin_create(
@overload
def begin_create(
- self, policy_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, policy_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Policy]:
"""Creates the policy.
@@ -475,18 +453,10 @@ def begin_create(
:param policy_name: Replication policy name. Required.
:type policy_name: str
:param input: Create policy input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -494,7 +464,7 @@ def begin_create(
@distributed_trace
def begin_create(
- self, policy_name: str, input: Union[_models.CreatePolicyInput, IO], **kwargs: Any
+ self, policy_name: str, input: Union[_models.CreatePolicyInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Policy]:
"""Creates the policy.
@@ -502,19 +472,9 @@ def begin_create(
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :param input: Create policy input. Is either a CreatePolicyInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreatePolicyInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Create policy input. Is either a CreatePolicyInput type or a IO[bytes] type.
+ Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreatePolicyInput or IO[bytes]
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -539,12 +499,13 @@ def begin_create(
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("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -554,22 +515,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Policy].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return LROPoller[_models.Policy](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, policy_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, policy_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -581,38 +538,41 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, policy_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -622,14 +582,6 @@ def begin_delete(self, policy_name: str, **kwargs: Any) -> LROPoller[None]:
:param policy_name: Replication policy name. Required.
:type policy_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -643,7 +595,7 @@ def begin_delete(self, policy_name: str, **kwargs: Any) -> LROPoller[None]:
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( # type: ignore
+ raw_result = self._delete_initial(
policy_name=policy_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -651,11 +603,12 @@ def begin_delete(self, policy_name: str, **kwargs: Any) -> LROPoller[None]:
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -664,22 +617,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
- self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO], **kwargs: Any
- ) -> Optional[_models.Policy]:
- error_map = {
+ self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -692,7 +641,7 @@ def _update_initial(
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[Optional[_models.Policy]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -702,45 +651,42 @@ def _update_initial(
else:
_json = self._serialize.body(input, "UpdatePolicyInput")
- request = build_update_request(
+ _request = build_update_request(
policy_name=policy_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("Policy", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -762,14 +708,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -777,7 +715,7 @@ def begin_update(
@overload
def begin_update(
- self, policy_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, policy_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.Policy]:
"""Updates the policy.
@@ -786,18 +724,10 @@ def begin_update(
:param policy_name: Policy Id. Required.
:type policy_name: str
:param input: Update Policy Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -805,7 +735,7 @@ def begin_update(
@distributed_trace
def begin_update(
- self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO], **kwargs: Any
+ self, policy_name: str, input: Union[_models.UpdatePolicyInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.Policy]:
"""Updates the policy.
@@ -813,19 +743,9 @@ def begin_update(
:param policy_name: Policy Id. Required.
:type policy_name: str
- :param input: Update Policy Input. Is either a UpdatePolicyInput type or a IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdatePolicyInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update Policy Input. Is either a UpdatePolicyInput type or a IO[bytes] type.
+ Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdatePolicyInput or IO[bytes]
:return: An instance of LROPoller that returns either Policy or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.Policy]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -850,12 +770,13 @@ def begin_update(
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("Policy", pipeline_response)
+ deserialized = self._deserialize("Policy", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -865,14 +786,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.Policy].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}"
- }
+ return LROPoller[_models.Policy](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protectable_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protectable_items_operations.py
index 651512eced2a..ccfb3819afd9 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protectable_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protectable_items_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,11 +38,11 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protection_containers_request(
+def build_list_by_replication_protection_containers_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
filter: Optional[str] = None,
@@ -51,7 +53,7 @@ def build_list_by_replication_protection_containers_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -60,8 +62,8 @@ def build_list_by_replication_protection_containers_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -88,15 +90,15 @@ def build_get_request(
fabric_name: str,
protection_container_name: str,
protectable_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -105,8 +107,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -144,7 +146,7 @@ def __init__(self, *args, **kwargs):
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self,
fabric_name: str,
protection_container_name: str,
@@ -167,7 +169,6 @@ def list_by_replication_protection_containers(
:type take: str
:param skip_token: skipToken OData query parameter. Default value is None.
: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 ProtectableItem or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectableItem]
@@ -179,7 +180,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectableItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -190,22 +191,20 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
filter=filter,
take=take,
skip_token=skip_token,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -217,13 +216,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectableItemCollection", pipeline_response)
@@ -233,11 +231,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -249,10 +247,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems"
- }
-
@distributed_trace
def get(
self, fabric_name: str, protection_container_name: str, protectable_item_name: str, **kwargs: Any
@@ -267,12 +261,11 @@ def get(
:type protection_container_name: str
:param protectable_item_name: Protectable item name. Required.
:type protectable_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectableItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectableItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -286,24 +279,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectableItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
protectable_item_name=protectable_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -312,13 +303,9 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectableItem", pipeline_response)
+ deserialized = self._deserialize("ProtectableItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py
index a4963e1ddcab..f9e42b8f416d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,18 +44,18 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protection_containers_request(
+def build_list_by_replication_protection_containers_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -59,8 +64,8 @@ def build_list_by_replication_protection_containers_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -81,15 +86,15 @@ def build_get_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -98,8 +103,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -123,15 +128,15 @@ def build_create_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -141,8 +146,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -168,22 +173,22 @@ def build_purge_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -204,15 +209,15 @@ def build_update_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -222,8 +227,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -249,15 +254,15 @@ def build_add_disks_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -267,8 +272,8 @@ def build_add_disks_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -294,15 +299,15 @@ def build_apply_recovery_point_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -312,8 +317,8 @@ def build_apply_recovery_point_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -339,15 +344,15 @@ def build_failover_cancel_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -356,8 +361,8 @@ def build_failover_cancel_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -381,15 +386,15 @@ def build_failover_commit_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -398,8 +403,8 @@ def build_failover_commit_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -423,15 +428,15 @@ def build_planned_failover_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -441,8 +446,8 @@ def build_planned_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -468,15 +473,15 @@ def build_delete_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
# Construct URL
_url = kwargs.pop(
@@ -484,8 +489,8 @@ def build_delete_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -510,15 +515,15 @@ def build_remove_disks_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -528,8 +533,8 @@ def build_remove_disks_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -555,15 +560,15 @@ def build_repair_replication_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -572,8 +577,8 @@ def build_repair_replication_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -597,15 +602,15 @@ def build_reprotect_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -615,8 +620,8 @@ def build_reprotect_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -642,15 +647,15 @@ def build_resolve_health_errors_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -660,8 +665,8 @@ def build_resolve_health_errors_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -687,15 +692,15 @@ def build_switch_provider_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -705,8 +710,8 @@ def build_switch_provider_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -732,15 +737,15 @@ def build_test_failover_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -750,8 +755,8 @@ def build_test_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -777,15 +782,15 @@ def build_test_failover_cleanup_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -795,8 +800,8 @@ def build_test_failover_cleanup_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -822,15 +827,15 @@ def build_unplanned_failover_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -840,8 +845,8 @@ def build_unplanned_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -867,15 +872,15 @@ def build_update_appliance_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -885,8 +890,8 @@ def build_update_appliance_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateAppliance",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -912,15 +917,15 @@ def build_update_mobility_service_request(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -930,8 +935,8 @@ def build_update_mobility_service_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateMobilityService",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -954,8 +959,8 @@ def build_update_mobility_service_request(
def build_list_request(
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
skip_token: Optional[str] = None,
@@ -965,7 +970,7 @@ def build_list_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -974,8 +979,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -1014,7 +1019,7 @@ def __init__(self, *args, **kwargs):
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self, fabric_name: str, protection_container_name: str, **kwargs: Any
) -> Iterable["_models.ReplicationProtectedItem"]:
"""Gets the list of Replication protected items.
@@ -1025,7 +1030,6 @@ def list_by_replication_protection_containers(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1038,7 +1042,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1049,19 +1053,17 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1073,13 +1075,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectedItemCollection", pipeline_response)
@@ -1089,11 +1090,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1105,10 +1106,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems"
- }
-
@distributed_trace
def get(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
@@ -1123,12 +1120,11 @@ def get(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectedItem or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectedItem
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1142,24 +1138,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItem] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1168,26 +1162,22 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: Union[_models.EnableProtectionInput, IO],
+ input: Union[_models.EnableProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1200,7 +1190,7 @@ def _create_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1210,47 +1200,44 @@ def _create_initial(
else:
_json = self._serialize.body(input, "EnableProtectionInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -1278,14 +1265,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1299,7 +1278,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: IO,
+ input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1315,18 +1294,10 @@ def begin_create(
:param replicated_protected_item_name: A name for the replication protected item. Required.
:type replicated_protected_item_name: str
:param input: Enable Protection Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1340,7 +1311,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- input: Union[_models.EnableProtectionInput, IO],
+ input: Union[_models.EnableProtectionInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Enables protection.
@@ -1353,20 +1324,9 @@ def begin_create(
:type protection_container_name: str
:param replicated_protected_item_name: A name for the replication protected item. Required.
:type replicated_protected_item_name: str
- :param input: Enable Protection Input. Is either a EnableProtectionInput type or a IO type.
- Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Enable Protection Input. Is either a EnableProtectionInput type or a IO[bytes]
+ type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.EnableProtectionInput or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1395,12 +1355,13 @@ def begin_create(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1410,22 +1371,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _purge_initial( # pylint: disable=inconsistent-return-statements
+ def _purge_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1437,40 +1396,43 @@ def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_purge(
@@ -1488,14 +1450,6 @@ def begin_purge(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1509,7 +1463,7 @@ def begin_purge(
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._purge_initial( # type: ignore
+ raw_result = self._purge_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
@@ -1519,11 +1473,12 @@ def begin_purge(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1532,27 +1487,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO],
+ update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1565,7 +1516,7 @@ def _update_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1575,47 +1526,44 @@ def _update_initial(
else:
_json = self._serialize.body(update_protection_input, "UpdateReplicationProtectedItemInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -1644,14 +1592,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1665,7 +1605,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: IO,
+ update_protection_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1681,18 +1621,10 @@ def begin_update(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param update_protection_input: Update protection input. Required.
- :type update_protection_input: IO
+ :type update_protection_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1706,7 +1638,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO],
+ update_protection_input: Union[_models.UpdateReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Updates the replication protected item settings.
@@ -1720,20 +1652,10 @@ def begin_update(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param update_protection_input: Update protection input. Is either a
- UpdateReplicationProtectedItemInput type or a IO type. Required.
+ UpdateReplicationProtectedItemInput type or a IO[bytes] type. Required.
:type update_protection_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateReplicationProtectedItemInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateReplicationProtectedItemInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1762,12 +1684,13 @@ def begin_update(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1777,27 +1700,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _add_disks_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: Union[_models.AddDisksInput, IO],
+ add_disks_input: Union[_models.AddDisksInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1810,7 +1731,7 @@ def _add_disks_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1820,47 +1741,44 @@ def _add_disks_initial(
else:
_json = self._serialize.body(add_disks_input, "AddDisksInput")
- request = build_add_disks_request(
+ _request = build_add_disks_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._add_disks_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _add_disks_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks"
- }
+ return deserialized # type: ignore
@overload
def begin_add_disks(
@@ -1888,14 +1806,6 @@ def begin_add_disks(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1909,7 +1819,7 @@ def begin_add_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: IO,
+ add_disks_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1925,18 +1835,10 @@ def begin_add_disks(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param add_disks_input: Add disks input. Required.
- :type add_disks_input: IO
+ :type add_disks_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -1950,7 +1852,7 @@ def begin_add_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- add_disks_input: Union[_models.AddDisksInput, IO],
+ add_disks_input: Union[_models.AddDisksInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Add disk(s) for protection.
@@ -1963,19 +1865,10 @@ def begin_add_disks(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param add_disks_input: Add disks input. Is either a AddDisksInput type or a IO type. Required.
- :type add_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param add_disks_input: Add disks input. Is either a AddDisksInput type or a IO[bytes] type.
+ Required.
+ :type add_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.AddDisksInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2004,12 +1897,13 @@ def begin_add_disks(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2019,27 +1913,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_add_disks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/addDisks"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _apply_recovery_point_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO],
+ apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2052,7 +1944,7 @@ def _apply_recovery_point_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2062,47 +1954,44 @@ def _apply_recovery_point_initial(
else:
_json = self._serialize.body(apply_recovery_point_input, "ApplyRecoveryPointInput")
- request = build_apply_recovery_point_request(
+ _request = build_apply_recovery_point_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._apply_recovery_point_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _apply_recovery_point_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint"
- }
+ return deserialized # type: ignore
@overload
def begin_apply_recovery_point(
@@ -2131,14 +2020,6 @@ def begin_apply_recovery_point(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2152,7 +2033,7 @@ def begin_apply_recovery_point(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: IO,
+ apply_recovery_point_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2168,18 +2049,10 @@ def begin_apply_recovery_point(
:param replicated_protected_item_name: The replicated protected item name. Required.
:type replicated_protected_item_name: str
:param apply_recovery_point_input: The ApplyRecoveryPointInput. Required.
- :type apply_recovery_point_input: IO
+ :type apply_recovery_point_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2193,7 +2066,7 @@ def begin_apply_recovery_point(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO],
+ apply_recovery_point_input: Union[_models.ApplyRecoveryPointInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Change or apply recovery point.
@@ -2207,20 +2080,9 @@ def begin_apply_recovery_point(
:param replicated_protected_item_name: The replicated protected item name. Required.
:type replicated_protected_item_name: str
:param apply_recovery_point_input: The ApplyRecoveryPointInput. Is either a
- ApplyRecoveryPointInput type or a IO type. Required.
+ ApplyRecoveryPointInput type or a IO[bytes] type. Required.
:type apply_recovery_point_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyRecoveryPointInput or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2249,12 +2111,13 @@ def begin_apply_recovery_point(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2264,22 +2127,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_apply_recovery_point.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _failover_cancel_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2291,46 +2152,43 @@ def _failover_cancel_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_cancel_request(
+ _request = build_failover_cancel_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _failover_cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_failover_cancel(
@@ -2346,14 +2204,6 @@ def begin_failover_cancel(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2379,12 +2229,13 @@ def begin_failover_cancel(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2394,22 +2245,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCancel"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _failover_commit_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2421,46 +2270,43 @@ def _failover_commit_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_commit_request(
+ _request = build_failover_commit_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_commit_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _failover_commit_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_failover_commit(
@@ -2476,14 +2322,6 @@ def begin_failover_commit(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2509,12 +2347,13 @@ def begin_failover_commit(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2524,27 +2363,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_commit.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _planned_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.PlannedFailoverInput, IO],
+ failover_input: Union[_models.PlannedFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2557,7 +2394,7 @@ def _planned_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2567,47 +2404,44 @@ def _planned_failover_initial(
else:
_json = self._serialize.body(failover_input, "PlannedFailoverInput")
- request = build_planned_failover_request(
+ _request = build_planned_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._planned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _planned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_planned_failover(
@@ -2635,14 +2469,6 @@ def begin_planned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2656,7 +2482,7 @@ def begin_planned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: IO,
+ failover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2672,18 +2498,10 @@ def begin_planned_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param failover_input: Planned failover input. Required.
- :type failover_input: IO
+ :type failover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2697,7 +2515,7 @@ def begin_planned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.PlannedFailoverInput, IO],
+ failover_input: Union[_models.PlannedFailoverInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Execute planned failover.
@@ -2710,21 +2528,10 @@ def begin_planned_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param failover_input: Planned failover input. Is either a PlannedFailoverInput type or a IO
- type. Required.
+ :param failover_input: Planned failover input. Is either a PlannedFailoverInput type or a
+ IO[bytes] type. Required.
:type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.PlannedFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -2753,12 +2560,13 @@ def begin_planned_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2768,27 +2576,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_planned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
+ def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: Union[_models.DisableProtectionInput, IO],
+ disable_protection_input: Union[_models.DisableProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2801,7 +2607,7 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
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[None] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2811,41 +2617,44 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
else:
_json = self._serialize.body(disable_protection_input, "DisableProtectionInput")
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove"
- }
+ return deserialized # type: ignore
@overload
def begin_delete(
@@ -2875,14 +2684,6 @@ def begin_delete(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -2894,7 +2695,7 @@ def begin_delete(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: IO,
+ disable_protection_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -2911,18 +2712,10 @@ def begin_delete(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param disable_protection_input: Disable protection input. Required.
- :type disable_protection_input: IO
+ :type disable_protection_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -2934,7 +2727,7 @@ def begin_delete(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- disable_protection_input: Union[_models.DisableProtectionInput, IO],
+ disable_protection_input: Union[_models.DisableProtectionInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[None]:
"""Disables protection.
@@ -2949,20 +2742,9 @@ def begin_delete(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param disable_protection_input: Disable protection input. Is either a DisableProtectionInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type disable_protection_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.DisableProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.DisableProtectionInput or IO[bytes]
: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:
@@ -2977,7 +2759,7 @@ def begin_delete(
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
@@ -2989,11 +2771,12 @@ def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -3002,27 +2785,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _remove_disks_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: Union[_models.RemoveDisksInput, IO],
+ remove_disks_input: Union[_models.RemoveDisksInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3035,7 +2814,7 @@ def _remove_disks_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3045,47 +2824,44 @@ def _remove_disks_initial(
else:
_json = self._serialize.body(remove_disks_input, "RemoveDisksInput")
- request = build_remove_disks_request(
+ _request = build_remove_disks_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._remove_disks_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _remove_disks_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks"
- }
+ return deserialized # type: ignore
@overload
def begin_remove_disks(
@@ -3113,14 +2889,6 @@ def begin_remove_disks(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3134,7 +2902,7 @@ def begin_remove_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: IO,
+ remove_disks_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3150,18 +2918,10 @@ def begin_remove_disks(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param remove_disks_input: Remove disks input. Required.
- :type remove_disks_input: IO
+ :type remove_disks_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3175,7 +2935,7 @@ def begin_remove_disks(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- remove_disks_input: Union[_models.RemoveDisksInput, IO],
+ remove_disks_input: Union[_models.RemoveDisksInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Removes disk(s).
@@ -3188,21 +2948,10 @@ def begin_remove_disks(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param remove_disks_input: Remove disks input. Is either a RemoveDisksInput type or a IO type.
- Required.
+ :param remove_disks_input: Remove disks input. Is either a RemoveDisksInput type or a IO[bytes]
+ type. Required.
:type remove_disks_input: ~azure.mgmt.recoveryservicessiterecovery.models.RemoveDisksInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3231,12 +2980,13 @@ def begin_remove_disks(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3246,22 +2996,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_remove_disks.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/removeDisks"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _repair_replication_initial(
self, fabric_name: str, protection_container_name: str, replicated_protected_item_name: str, **kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3273,46 +3021,43 @@ def _repair_replication_initial(
_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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_repair_replication_request(
+ _request = build_repair_replication_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._repair_replication_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _repair_replication_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_repair_replication(
@@ -3329,14 +3074,6 @@ def begin_repair_replication(
:type protection_container_name: str
:param replicated_protected_item_name: The name of the replication protected item. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3362,12 +3099,13 @@ def begin_repair_replication(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3377,27 +3115,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_repair_replication.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _reprotect_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: Union[_models.ReverseReplicationInput, IO],
+ reprotect_input: Union[_models.ReverseReplicationInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3410,7 +3146,7 @@ def _reprotect_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3420,47 +3156,44 @@ def _reprotect_initial(
else:
_json = self._serialize.body(reprotect_input, "ReverseReplicationInput")
- request = build_reprotect_request(
+ _request = build_reprotect_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._reprotect_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _reprotect_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect"
- }
+ return deserialized # type: ignore
@overload
def begin_reprotect(
@@ -3473,7 +3206,7 @@ def begin_reprotect(
content_type: str = "application/json",
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -3488,14 +3221,6 @@ def begin_reprotect(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3509,12 +3234,12 @@ def begin_reprotect(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: IO,
+ reprotect_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -3525,18 +3250,10 @@ def begin_reprotect(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param reprotect_input: Reverse replication input. Required.
- :type reprotect_input: IO
+ :type reprotect_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3550,10 +3267,10 @@ def begin_reprotect(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- reprotect_input: Union[_models.ReverseReplicationInput, IO],
+ reprotect_input: Union[_models.ReverseReplicationInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
- """Execute Reverse Replication\Reprotect.
+ """Execute Reverse Replication\\Reprotect.
Operation to reprotect or reverse replicate a failed over replication protected item.
@@ -3564,20 +3281,9 @@ def begin_reprotect(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param reprotect_input: Reverse replication input. Is either a ReverseReplicationInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type reprotect_input: ~azure.mgmt.recoveryservicessiterecovery.models.ReverseReplicationInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3606,12 +3312,13 @@ def begin_reprotect(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3621,27 +3328,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reprotect.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _resolve_health_errors_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: Union[_models.ResolveHealthInput, IO],
+ resolve_health_input: Union[_models.ResolveHealthInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3654,7 +3359,7 @@ def _resolve_health_errors_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3664,47 +3369,44 @@ def _resolve_health_errors_initial(
else:
_json = self._serialize.body(resolve_health_input, "ResolveHealthInput")
- request = build_resolve_health_errors_request(
+ _request = build_resolve_health_errors_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._resolve_health_errors_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _resolve_health_errors_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors"
- }
+ return deserialized # type: ignore
@overload
def begin_resolve_health_errors(
@@ -3732,14 +3434,6 @@ def begin_resolve_health_errors(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3753,7 +3447,7 @@ def begin_resolve_health_errors(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: IO,
+ resolve_health_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -3769,18 +3463,10 @@ def begin_resolve_health_errors(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param resolve_health_input: Health issue input object. Required.
- :type resolve_health_input: IO
+ :type resolve_health_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3794,7 +3480,7 @@ def begin_resolve_health_errors(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resolve_health_input: Union[_models.ResolveHealthInput, IO],
+ resolve_health_input: Union[_models.ResolveHealthInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Resolve health errors.
@@ -3808,20 +3494,9 @@ def begin_resolve_health_errors(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param resolve_health_input: Health issue input object. Is either a ResolveHealthInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type resolve_health_input: ~azure.mgmt.recoveryservicessiterecovery.models.ResolveHealthInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3850,12 +3525,13 @@ def begin_resolve_health_errors(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -3865,27 +3541,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_resolve_health_errors.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/resolveHealthErrors"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _switch_provider_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: Union[_models.SwitchProviderInput, IO],
+ switch_provider_input: Union[_models.SwitchProviderInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -3898,7 +3572,7 @@ def _switch_provider_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -3908,47 +3582,44 @@ def _switch_provider_initial(
else:
_json = self._serialize.body(switch_provider_input, "SwitchProviderInput")
- request = build_switch_provider_request(
+ _request = build_switch_provider_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._switch_provider_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _switch_provider_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider"
- }
+ return deserialized # type: ignore
@overload
def begin_switch_provider(
@@ -3977,14 +3648,6 @@ def begin_switch_provider(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -3998,7 +3661,7 @@ def begin_switch_provider(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: IO,
+ switch_provider_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4014,18 +3677,10 @@ def begin_switch_provider(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param switch_provider_input: Switch provider input. Required.
- :type switch_provider_input: IO
+ :type switch_provider_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4039,7 +3694,7 @@ def begin_switch_provider(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- switch_provider_input: Union[_models.SwitchProviderInput, IO],
+ switch_provider_input: Union[_models.SwitchProviderInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Execute switch provider.
@@ -4053,20 +3708,9 @@ def begin_switch_provider(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param switch_provider_input: Switch provider input. Is either a SwitchProviderInput type or a
- IO type. Required.
+ IO[bytes] type. Required.
:type switch_provider_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProviderInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProviderInput or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4095,12 +3739,13 @@ def begin_switch_provider(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4112,27 +3757,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_switch_provider.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/switchProvider"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: Union[_models.TestFailoverInput, IO],
+ testfailover_input: Union[_models.TestFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4145,7 +3788,7 @@ def _test_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -4155,47 +3798,44 @@ def _test_failover_initial(
else:
_json = self._serialize.body(testfailover_input, "TestFailoverInput")
- request = build_test_failover_request(
+ _request = build_test_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _test_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_test_failover(
@@ -4223,14 +3863,6 @@ def begin_test_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4244,7 +3876,7 @@ def begin_test_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: IO,
+ testfailover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4260,18 +3892,10 @@ def begin_test_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param testfailover_input: Test failover input. Required.
- :type testfailover_input: IO
+ :type testfailover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4285,7 +3909,7 @@ def begin_test_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- testfailover_input: Union[_models.TestFailoverInput, IO],
+ testfailover_input: Union[_models.TestFailoverInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Execute test failover.
@@ -4298,21 +3922,10 @@ def begin_test_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param testfailover_input: Test failover input. Is either a TestFailoverInput type or a IO
- type. Required.
+ :param testfailover_input: Test failover input. Is either a TestFailoverInput type or a
+ IO[bytes] type. Required.
:type testfailover_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4341,12 +3954,13 @@ def begin_test_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4356,27 +3970,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_failover_cleanup_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: Union[_models.TestFailoverCleanupInput, IO],
+ cleanup_input: Union[_models.TestFailoverCleanupInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4389,7 +4001,7 @@ def _test_failover_cleanup_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -4399,47 +4011,44 @@ def _test_failover_cleanup_initial(
else:
_json = self._serialize.body(cleanup_input, "TestFailoverCleanupInput")
- request = build_test_failover_cleanup_request(
+ _request = build_test_failover_cleanup_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_failover_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup"
- }
+ return deserialized # type: ignore
@overload
def begin_test_failover_cleanup(
@@ -4467,14 +4076,6 @@ def begin_test_failover_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4488,7 +4089,7 @@ def begin_test_failover_cleanup(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: IO,
+ cleanup_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4504,18 +4105,10 @@ def begin_test_failover_cleanup(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param cleanup_input: Test failover cleanup input. Required.
- :type cleanup_input: IO
+ :type cleanup_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4529,7 +4122,7 @@ def begin_test_failover_cleanup(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- cleanup_input: Union[_models.TestFailoverCleanupInput, IO],
+ cleanup_input: Union[_models.TestFailoverCleanupInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Execute test failover cleanup.
@@ -4543,20 +4136,9 @@ def begin_test_failover_cleanup(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param cleanup_input: Test failover cleanup input. Is either a TestFailoverCleanupInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type cleanup_input: ~azure.mgmt.recoveryservicessiterecovery.models.TestFailoverCleanupInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4585,12 +4167,13 @@ def begin_test_failover_cleanup(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4600,27 +4183,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _unplanned_failover_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.UnplannedFailoverInput, IO],
+ failover_input: Union[_models.UnplannedFailoverInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4633,7 +4214,7 @@ def _unplanned_failover_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -4643,47 +4224,44 @@ def _unplanned_failover_initial(
else:
_json = self._serialize.body(failover_input, "UnplannedFailoverInput")
- request = build_unplanned_failover_request(
+ _request = build_unplanned_failover_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._unplanned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _unplanned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_unplanned_failover(
@@ -4711,14 +4289,6 @@ def begin_unplanned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4732,7 +4302,7 @@ def begin_unplanned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: IO,
+ failover_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4748,18 +4318,10 @@ def begin_unplanned_failover(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param failover_input: Failover input. Required.
- :type failover_input: IO
+ :type failover_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4773,7 +4335,7 @@ def begin_unplanned_failover(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- failover_input: Union[_models.UnplannedFailoverInput, IO],
+ failover_input: Union[_models.UnplannedFailoverInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Execute unplanned failover.
@@ -4786,21 +4348,10 @@ def begin_unplanned_failover(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :param failover_input: Failover input. Is either a UnplannedFailoverInput type or a IO type.
- Required.
+ :param failover_input: Failover input. Is either a UnplannedFailoverInput type or a IO[bytes]
+ type. Required.
:type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.UnplannedFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4829,12 +4380,13 @@ def begin_unplanned_failover(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -4844,27 +4396,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_unplanned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _update_appliance_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO],
+ appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -4877,7 +4427,7 @@ def _update_appliance_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -4887,47 +4437,44 @@ def _update_appliance_initial(
else:
_json = self._serialize.body(appliance_update_input, "UpdateApplianceForReplicationProtectedItemInput")
- request = build_update_appliance_request(
+ _request = build_update_appliance_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_appliance_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_appliance_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateAppliance"
- }
+ return deserialized # type: ignore
@overload
def begin_update_appliance(
@@ -4956,14 +4503,6 @@ def begin_update_appliance(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -4977,7 +4516,7 @@ def begin_update_appliance(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: IO,
+ appliance_update_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -4993,18 +4532,10 @@ def begin_update_appliance(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param appliance_update_input: Appliance update protection input. Required.
- :type appliance_update_input: IO
+ :type appliance_update_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5018,7 +4549,7 @@ def begin_update_appliance(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO],
+ appliance_update_input: Union[_models.UpdateApplianceForReplicationProtectedItemInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Updates appliance for replication protected Item.
@@ -5032,21 +4563,10 @@ def begin_update_appliance(
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
:param appliance_update_input: Appliance update protection input. Is either a
- UpdateApplianceForReplicationProtectedItemInput type or a IO type. Required.
+ UpdateApplianceForReplicationProtectedItemInput type or a IO[bytes] type. Required.
:type appliance_update_input:
~azure.mgmt.recoveryservicessiterecovery.models.UpdateApplianceForReplicationProtectedItemInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5075,12 +4595,13 @@ def begin_update_appliance(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -5090,27 +4611,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update_appliance.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateAppliance"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _update_mobility_service_initial(
self,
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO],
+ update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ReplicationProtectedItem]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -5123,7 +4642,7 @@ def _update_mobility_service_initial(
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[Optional[_models.ReplicationProtectedItem]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -5133,51 +4652,48 @@ def _update_mobility_service_initial(
else:
_json = self._serialize.body(update_mobility_service_request, "UpdateMobilityServiceRequest")
- request = build_update_mobility_service_request(
+ _request = build_update_mobility_service_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_mobility_service_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
response_headers = {}
- if response.status_code == 200:
- deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response)
-
if response.status_code == 202:
response_headers["Location"] = self._deserialize("str", response.headers.get("Location"))
- if cls:
- return cls(pipeline_response, deserialized, response_headers)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
- return deserialized
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _update_mobility_service_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateMobilityService"
- }
+ return deserialized # type: ignore
@overload
def begin_update_mobility_service(
@@ -5210,14 +4726,6 @@ def begin_update_mobility_service(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5231,7 +4739,7 @@ def begin_update_mobility_service(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: IO,
+ update_mobility_service_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -5251,18 +4759,10 @@ def begin_update_mobility_service(
:type replicated_protected_item_name: str
:param update_mobility_service_request: Request to update the mobility service on the protected
item. Required.
- :type update_mobility_service_request: IO
+ :type update_mobility_service_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5276,7 +4776,7 @@ def begin_update_mobility_service(
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO],
+ update_mobility_service_request: Union[_models.UpdateMobilityServiceRequest, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ReplicationProtectedItem]:
"""Update the mobility service on a protected item.
@@ -5293,20 +4793,9 @@ def begin_update_mobility_service(
be updated. Required.
:type replicated_protected_item_name: str
:param update_mobility_service_request: Request to update the mobility service on the protected
- item. Is either a UpdateMobilityServiceRequest type or a IO type. Required.
+ item. Is either a UpdateMobilityServiceRequest type or a IO[bytes] type. Required.
:type update_mobility_service_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMobilityServiceRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateMobilityServiceRequest or IO[bytes]
:return: An instance of LROPoller that returns either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5335,12 +4824,13 @@ def begin_update_mobility_service(
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("ReplicationProtectedItem", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectedItem", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -5352,17 +4842,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ReplicationProtectedItem].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update_mobility_service.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/updateMobilityService"
- }
+ return LROPoller[_models.ReplicationProtectedItem](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(
@@ -5377,7 +4865,6 @@ def list(
:type skip_token: str
:param filter: OData filter options. Default value is None.
:type filter: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectedItem or the result of
cls(response)
:rtype:
@@ -5390,7 +4877,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectedItemCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -5401,19 +4888,17 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
filter=filter,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -5425,13 +4910,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectedItemCollection", pipeline_response)
@@ -5441,11 +4925,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -5456,7 +4940,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_clusters_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_clusters_operations.py
new file mode 100644
index 000000000000..778b81b939a8
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_clusters_operations.py
@@ -0,0 +1,2603 @@
+# 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 io import IOBase
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
+import urllib.parse
+
+from azure.core.exceptions import (
+ ClientAuthenticationError,
+ HttpResponseError,
+ ResourceExistsError,
+ ResourceNotFoundError,
+ ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
+ map_error,
+)
+from azure.core.paging import ItemPaged
+from azure.core.pipeline import PipelineResponse
+from azure.core.polling import LROPoller, NoPolling, PollingMethod
+from azure.core.rest import HttpRequest, HttpResponse
+from azure.core.tracing.decorator import distributed_trace
+from azure.core.utils import case_insensitive_dict
+from azure.mgmt.core.exceptions import ARMErrorFormat
+from azure.mgmt.core.polling.arm_polling import ARMPolling
+
+from .. import models as _models
+from .._serialization import Serializer
+
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
+T = TypeVar("T")
+ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
+
+_SERIALIZER = Serializer()
+_SERIALIZER.client_side_validation = False
+
+
+def build_list_by_replication_protection_containers_request( # pylint: disable=name-too-long
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_get_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_create_request(
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ resource_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_purge_request(
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ resource_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_apply_recovery_point_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/applyRecoveryPoint",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_failover_commit_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/failoverCommit",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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="POST", url=_url, params=_params, headers=_headers, **kwargs)
+
+
+def build_get_operation_results_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ job_id: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/operationResults/{jobId}",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "jobId": _SERIALIZER.url("job_id", job_id, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_repair_replication_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/repairReplication",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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="POST", url=_url, params=_params, headers=_headers, **kwargs)
+
+
+def build_test_failover_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/testFailover",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_test_failover_cleanup_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/testFailoverCleanup",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_unplanned_failover_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionClusters/{replicationProtectionClusterName}/unplannedFailover",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$",
+ ),
+ "replicationProtectionClusterName": _SERIALIZER.url(
+ "replication_protection_cluster_name",
+ replication_protection_cluster_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_list_request(
+ resource_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ *,
+ skip_token: Optional[str] = None,
+ 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", "2025-01-01"))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionClusters",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ }
+
+ _url: str = _url.format(**path_format_arguments) # type: ignore
+
+ # Construct parameters
+ _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str")
+ if skip_token is not None:
+ _params["skipToken"] = _SERIALIZER.query("skip_token", skip_token, "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)
+
+
+class ReplicationProtectionClustersOperations:
+ """
+ .. warning::
+ **DO NOT** instantiate this class directly.
+
+ Instead, you should access the following operations through
+ :class:`~azure.mgmt.recoveryservicessiterecovery.SiteRecoveryManagementClient`'s
+ :attr:`replication_protection_clusters` attribute.
+ """
+
+ models = _models
+
+ def __init__(self, *args, **kwargs):
+ input_args = list(args)
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
+
+ @distributed_trace
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
+ self, resource_name: str, fabric_name: str, protection_container_name: str, **kwargs: Any
+ ) -> Iterable["_models.ReplicationProtectionCluster"]:
+ """Gets the list of Replication protection clusters in fabric, container.
+
+ Gets the list of ASR replication protected clusters in the protection container.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :return: An iterator like instance of either ReplicationProtectionCluster or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionClusterCollection] = 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_replication_protection_containers_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ else:
+ # make call to next link with the client's api-version
+ _parsed_next_link = urllib.parse.urlparse(next_link)
+ _next_request_params = case_insensitive_dict(
+ {
+ key: [urllib.parse.quote(v) for v in value]
+ for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items()
+ }
+ )
+ _next_request_params["api-version"] = self._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("ReplicationProtectionClusterCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, iter(list_of_elem)
+
+ def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return ItemPaged(get_next, extract_data)
+
+ @distributed_trace
+ def get(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> _models.ReplicationProtectionCluster:
+ """Gets the details of a Replication protection cluster.
+
+ Gets the details of an ASR replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: ReplicationProtectionCluster or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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.ReplicationProtectionCluster] = kwargs.pop("cls", None)
+
+ _request = build_get_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ReplicationProtectionCluster", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
+
+ def _create_initial(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: Union[_models.ReplicationProtectionCluster, 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(replication_protection_cluster, (IOBase, bytes)):
+ _content = replication_protection_cluster
+ else:
+ _json = self._serialize.body(replication_protection_cluster, "ReplicationProtectionCluster")
+
+ _request = build_create_request(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
+ subscription_id=self._config.subscription_id,
+ 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,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: _models.ReplicationProtectionCluster,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Required.
+ :type replication_protection_cluster:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_create(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Required.
+ :type replication_protection_cluster: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_create(
+ self,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ replication_protection_cluster: Union[_models.ReplicationProtectionCluster, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Create Replication protection Cluster.
+
+ The operation to create an ASR replication protection cluster item.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param replication_protection_cluster: Create replication protection cluster Input. Is either a
+ ReplicationProtectionCluster type or a IO[bytes] type. Required.
+ :type replication_protection_cluster:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster or IO[bytes]
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ replication_protection_cluster=replication_protection_cluster,
+ 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("ReplicationProtectionCluster", 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.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ def _purge_initial(
+ self, fabric_name: str, protection_container_name: str, replication_protection_cluster_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_purge_request(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_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 [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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace
+ def begin_purge(
+ self, fabric_name: str, protection_container_name: str, replication_protection_cluster_name: str, **kwargs: Any
+ ) -> LROPoller[None]:
+ """Purge the replication protection cluster.
+
+ The operation to purge the replication protection cluster. This operation will force delete the
+ replication protection cluster. Use the remove operation on replication protection cluster to
+ perform a clean disable replication protection cluster.
+
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_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._purge_initial(
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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, lro_options={"final-state-via": "location"}, **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 _apply_recovery_point_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: Union[_models.ApplyClusterRecoveryPointInput, 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(apply_cluster_recovery_point_input, (IOBase, bytes)):
+ _content = apply_cluster_recovery_point_input
+ else:
+ _json = self._serialize.body(apply_cluster_recovery_point_input, "ApplyClusterRecoveryPointInput")
+
+ _request = build_apply_recovery_point_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: _models.ApplyClusterRecoveryPointInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Required.
+ :type apply_cluster_recovery_point_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Required.
+ :type apply_cluster_recovery_point_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_apply_recovery_point(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ apply_cluster_recovery_point_input: Union[_models.ApplyClusterRecoveryPointInput, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute the change recovery point operation for cluster.
+
+ Operation to apply a new cluster recovery point on the Protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param apply_cluster_recovery_point_input: Apply recovery point input. Is either a
+ ApplyClusterRecoveryPointInput type or a IO[bytes] type. Required.
+ :type apply_cluster_recovery_point_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ApplyClusterRecoveryPointInput or IO[bytes]
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._apply_recovery_point_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ apply_cluster_recovery_point_input=apply_cluster_recovery_point_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ def _failover_commit_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_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_failover_commit_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace
+ def begin_failover_commit(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute commit failover for cluster.
+
+ Operation to initiate commit failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionCluster] = 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._failover_commit_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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):
+ deserialized = self._deserialize("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ @distributed_trace
+ def get_operation_results(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ job_id: str,
+ **kwargs: Any
+ ) -> _models.ReplicationProtectionCluster:
+ """Tracks the Replication protection cluster async operation.
+
+ Track the results of an asynchronous operation on the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param job_id: job id to track. Required.
+ :type job_id: str
+ :return: ReplicationProtectionCluster or the result of cls(response)
+ :rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster
+ :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.ReplicationProtectionCluster] = kwargs.pop("cls", None)
+
+ _request = build_get_operation_results_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ job_id=job_id,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ deserialized = self._deserialize("ReplicationProtectionCluster", pipeline_response.http_response)
+
+ if cls:
+ return cls(pipeline_response, deserialized, {}) # type: ignore
+
+ return deserialized # type: ignore
+
+ def _repair_replication_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_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_repair_replication_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ api_version=api_version,
+ headers=_headers,
+ params=_params,
+ )
+ _request.url = self._client.format_url(_request.url)
+
+ _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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @distributed_trace
+ def begin_repair_replication(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Resynchronize or repair replication of protection cluster.
+
+ The operation to repair replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionCluster] = 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._repair_replication_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_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):
+ deserialized = self._deserialize("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ def _test_failover_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterTestFailoverInput, 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(failover_input, (IOBase, bytes)):
+ _content = failover_input
+ else:
+ _json = self._serialize.body(failover_input, "ClusterTestFailoverInput")
+
+ _request = build_test_failover_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: _models.ClusterTestFailoverInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Required.
+ :type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Required.
+ :type failover_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_test_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterTestFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover for cluster.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Cluster test failover input body. Is either a ClusterTestFailoverInput
+ type or a IO[bytes] type. Required.
+ :type failover_input: ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverInput
+ or IO[bytes]
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._test_failover_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ failover_input=failover_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ def _test_failover_cleanup_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: Union[_models.ClusterTestFailoverCleanupInput, 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(cleanup_input, (IOBase, bytes)):
+ _content = cleanup_input
+ else:
+ _json = self._serialize.body(cleanup_input, "ClusterTestFailoverCleanupInput")
+
+ _request = build_test_failover_cleanup_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: _models.ClusterTestFailoverCleanupInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Required.
+ :type cleanup_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Required.
+ :type cleanup_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_test_failover_cleanup(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ cleanup_input: Union[_models.ClusterTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute test failover cleanup for cluster.
+
+ Operation to clean up the test failover of a replication protected cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param cleanup_input: Test failover cleanup input. Is either a ClusterTestFailoverCleanupInput
+ type or a IO[bytes] type. Required.
+ :type cleanup_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterTestFailoverCleanupInput or IO[bytes]
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._test_failover_cleanup_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ cleanup_input=cleanup_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ def _unplanned_failover_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterUnplannedFailoverInput, 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(failover_input, (IOBase, bytes)):
+ _content = failover_input
+ else:
+ _json = self._serialize.body(failover_input, "ClusterUnplannedFailoverInput")
+
+ _request = build_unplanned_failover_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: _models.ClusterUnplannedFailoverInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Required.
+ :type failover_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInput
+ :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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Required.
+ :type failover_input: IO[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 ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_unplanned_failover(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ replication_protection_cluster_name: str,
+ failover_input: Union[_models.ClusterUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ReplicationProtectionCluster]:
+ """Execute unplanned cluster failover.
+
+ Operation to initiate a failover of the replication protection cluster.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param replication_protection_cluster_name: Replication protection cluster name. Required.
+ :type replication_protection_cluster_name: str
+ :param failover_input: Failover input. Is either a ClusterUnplannedFailoverInput type or a
+ IO[bytes] type. Required.
+ :type failover_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.ClusterUnplannedFailoverInput or IO[bytes]
+ :return: An instance of LROPoller that returns either ReplicationProtectionCluster or the
+ result of cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :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.ReplicationProtectionCluster] = 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._unplanned_failover_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ replication_protection_cluster_name=replication_protection_cluster_name,
+ failover_input=failover_input,
+ 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("ReplicationProtectionCluster", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ReplicationProtectionCluster].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ReplicationProtectionCluster](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
+
+ @distributed_trace
+ def list(
+ self, resource_name: str, skip_token: Optional[str] = None, filter: Optional[str] = None, **kwargs: Any
+ ) -> Iterable["_models.ReplicationProtectionCluster"]:
+ """Gets the list of Replication protection clusters in vault.
+
+ Gets the list of ASR replication protected clusters in the vault.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param skip_token: The pagination token. Possible values: "FabricId" or "FabricId_CloudId" or
+ null. Default value is None.
+ :type skip_token: str
+ :param filter: OData filter options. Default value is None.
+ :type filter: str
+ :return: An iterator like instance of either ReplicationProtectionCluster or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionCluster]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+ _headers = 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.ReplicationProtectionClusterCollection] = 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_request(
+ resource_name=resource_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ skip_token=skip_token,
+ 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("ReplicationProtectionClusterCollection", pipeline_response)
+ list_of_elem = deserialized.value
+ if cls:
+ list_of_elem = cls(list_of_elem) # type: ignore
+ return deserialized.next_link or None, iter(list_of_elem)
+
+ def get_next(next_link=None):
+ _request = prepare_request(next_link)
+
+ _stream = False
+ pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
+ _request, stream=_stream, **kwargs
+ )
+ response = pipeline_response.http_response
+
+ if response.status_code not in [200]:
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
+ error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response)
+ raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)
+
+ return pipeline_response
+
+ return ItemPaged(get_next, extract_data)
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_container_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_container_mappings_operations.py
index 26051df53ac5..37d535ae0af8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_container_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_container_mappings_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,18 +44,18 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protection_containers_request(
+def build_list_by_replication_protection_containers_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -59,8 +64,8 @@ def build_list_by_replication_protection_containers_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -81,15 +86,15 @@ def build_get_request(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -98,8 +103,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -121,15 +126,15 @@ def build_create_request(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -139,8 +144,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -164,22 +169,22 @@ def build_purge_request(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -198,15 +203,15 @@ def build_update_request(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -216,8 +221,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -241,15 +246,15 @@ def build_delete_request(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
# Construct URL
_url = kwargs.pop(
@@ -257,8 +262,8 @@ def build_delete_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -278,12 +283,12 @@ def build_delete_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -292,8 +297,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -308,7 +313,7 @@ def build_list_request(
return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs)
-class ReplicationProtectionContainerMappingsOperations:
+class ReplicationProtectionContainerMappingsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -328,7 +333,7 @@ def __init__(self, *args, **kwargs):
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_protection_containers(
+ def list_by_replication_protection_containers( # pylint: disable=name-too-long
self, fabric_name: str, protection_container_name: str, **kwargs: Any
) -> Iterable["_models.ProtectionContainerMapping"]:
"""Gets the list of protection container mappings for a protection container.
@@ -339,7 +344,6 @@ def list_by_replication_protection_containers(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainerMapping or the result of
cls(response)
:rtype:
@@ -352,7 +356,7 @@ def list_by_replication_protection_containers(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -363,19 +367,17 @@ def list_by_replication_protection_containers(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protection_containers_request(
+ _request = build_list_by_replication_protection_containers_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protection_containers.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -387,13 +389,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerMappingCollection", pipeline_response)
@@ -403,11 +404,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -419,10 +420,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_protection_containers.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings"
- }
-
@distributed_trace
def get(
self, fabric_name: str, protection_container_name: str, mapping_name: str, **kwargs: Any
@@ -437,12 +434,11 @@ def get(
:type protection_container_name: str
:param mapping_name: Protection Container mapping name. Required.
:type mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectionContainerMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainerMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -456,24 +452,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -482,26 +476,22 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: Union[_models.CreateProtectionContainerMappingInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainerMapping]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -514,7 +504,7 @@ def _create_initial(
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[Optional[_models.ProtectionContainerMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -524,47 +514,44 @@ def _create_initial(
else:
_json = self._serialize.body(creation_input, "CreateProtectionContainerMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -593,14 +580,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -614,7 +593,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: IO,
+ creation_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -630,18 +609,10 @@ def begin_create(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param creation_input: Mapping creation input. Required.
- :type creation_input: IO
+ :type creation_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -655,7 +626,7 @@ def begin_create(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- creation_input: Union[_models.CreateProtectionContainerMappingInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ProtectionContainerMapping]:
"""Create protection container mapping.
@@ -669,20 +640,10 @@ def begin_create(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param creation_input: Mapping creation input. Is either a
- CreateProtectionContainerMappingInput type or a IO type. Required.
+ CreateProtectionContainerMappingInput type or a IO[bytes] type. Required.
:type creation_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerMappingInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -711,12 +672,13 @@ def begin_create(
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("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -726,22 +688,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ProtectionContainerMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return LROPoller[_models.ProtectionContainerMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _purge_initial( # pylint: disable=inconsistent-return-statements
+ def _purge_initial(
self, fabric_name: str, protection_container_name: str, mapping_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -753,40 +713,43 @@ def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_purge(
@@ -802,14 +765,6 @@ def begin_purge(
:type protection_container_name: str
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -823,7 +778,7 @@ def begin_purge(
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._purge_initial( # type: ignore
+ raw_result = self._purge_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
@@ -833,11 +788,12 @@ def begin_purge(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -846,27 +802,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: Union[_models.UpdateProtectionContainerMappingInput, IO],
+ update_input: Union[_models.UpdateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainerMapping]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -879,7 +831,7 @@ def _update_initial(
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[Optional[_models.ProtectionContainerMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -889,47 +841,44 @@ def _update_initial(
else:
_json = self._serialize.body(update_input, "UpdateProtectionContainerMappingInput")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -958,14 +907,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -979,7 +920,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: IO,
+ update_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -995,18 +936,10 @@ def begin_update(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param update_input: Mapping update input. Required.
- :type update_input: IO
+ :type update_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -1020,7 +953,7 @@ def begin_update(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- update_input: Union[_models.UpdateProtectionContainerMappingInput, IO],
+ update_input: Union[_models.UpdateProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ProtectionContainerMapping]:
"""Update protection container mapping.
@@ -1034,20 +967,10 @@ def begin_update(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param update_input: Mapping update input. Is either a UpdateProtectionContainerMappingInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type update_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateProtectionContainerMappingInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either ProtectionContainerMapping or the result
of cls(response)
:rtype:
@@ -1076,12 +999,13 @@ def begin_update(
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("ProtectionContainerMapping", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainerMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1091,27 +1015,25 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ProtectionContainerMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}"
- }
+ return LROPoller[_models.ProtectionContainerMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
+ def _delete_initial(
self,
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO],
+ removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1124,7 +1046,7 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
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[None] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1134,41 +1056,44 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
else:
_json = self._serialize.body(removal_input, "RemoveProtectionContainerMappingInput")
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove"
- }
+ return deserialized # type: ignore
@overload
def begin_delete(
@@ -1197,14 +1122,6 @@ def begin_delete(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1216,7 +1133,7 @@ def begin_delete(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: IO,
+ removal_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1232,18 +1149,10 @@ def begin_delete(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param removal_input: Removal input. Required.
- :type removal_input: IO
+ :type removal_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1255,7 +1164,7 @@ def begin_delete(
fabric_name: str,
protection_container_name: str,
mapping_name: str,
- removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO],
+ removal_input: Union[_models.RemoveProtectionContainerMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[None]:
"""Remove protection container mapping.
@@ -1269,20 +1178,10 @@ def begin_delete(
:param mapping_name: Protection container mapping name. Required.
:type mapping_name: str
:param removal_input: Removal input. Is either a RemoveProtectionContainerMappingInput type or
- a IO type. Required.
+ a IO[bytes] type. Required.
:type removal_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.RemoveProtectionContainerMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.RemoveProtectionContainerMappingInput or
+ IO[bytes]
: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:
@@ -1297,7 +1196,7 @@ def begin_delete(
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
mapping_name=mapping_name,
@@ -1309,11 +1208,12 @@ def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1322,17 +1222,13 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainerMapping"]:
@@ -1340,7 +1236,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainerMapping"]:
Lists the protection container mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainerMapping or the result of
cls(response)
:rtype:
@@ -1353,7 +1248,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainerMapping"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1364,17 +1259,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainerMapping"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1386,13 +1279,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerMappingCollection", pipeline_response)
@@ -1402,11 +1294,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1417,7 +1309,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_containers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_containers_operations.py
index a8af9459b9fb..df8f0c5ca5d7 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_containers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_containers_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,13 +44,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +59,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -74,15 +79,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -91,8 +96,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -112,15 +117,15 @@ def build_get_request(
def build_create_request(
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -130,8 +135,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -153,15 +158,15 @@ def build_create_request(
def build_discover_protectable_item_request(
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -171,8 +176,8 @@ def build_discover_protectable_item_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -194,22 +199,22 @@ def build_discover_protectable_item_request(
def build_delete_request(
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -223,18 +228,68 @@ def build_delete_request(
return HttpRequest(method="POST", url=_url, params=_params, **kwargs)
+def build_switch_cluster_protection_request(
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ resource_group_name: str,
+ subscription_id: str,
+ **kwargs: Any
+) -> HttpRequest:
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
+
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
+ accept = _headers.pop("Accept", "application/json")
+
+ # Construct URL
+ _url = kwargs.pop(
+ "template_url",
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchClusterProtection",
+ ) # pylint: disable=line-too-long
+ path_format_arguments = {
+ "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url(
+ "resource_name", resource_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
+ "fabricName": _SERIALIZER.url(
+ "fabric_name", fabric_name, "str", pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$"
+ ),
+ "protectionContainerName": _SERIALIZER.url(
+ "protection_container_name",
+ protection_container_name,
+ "str",
+ pattern=r"^[A-Za-z0-9][A-Za-z0-9-]*[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_switch_protection_request(
fabric_name: str,
protection_container_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -244,8 +299,8 @@ def build_switch_protection_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -265,12 +320,12 @@ def build_switch_protection_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -279,8 +334,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -295,7 +350,7 @@ def build_list_request(
return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs)
-class ReplicationProtectionContainersOperations:
+class ReplicationProtectionContainersOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -322,7 +377,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainer or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
@@ -334,7 +388,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -345,18 +399,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -368,13 +420,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerCollection", pipeline_response)
@@ -384,11 +435,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -400,10 +451,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers"
- }
-
@distributed_trace
def get(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -> _models.ProtectionContainer:
"""Gets the protection container details.
@@ -414,12 +461,11 @@ def get(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ProtectionContainer or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -433,23 +479,21 @@ def get(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainer] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -458,25 +502,21 @@ def get(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: Union[_models.CreateProtectionContainerInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -489,7 +529,7 @@ def _create_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -499,46 +539,43 @@ def _create_initial(
else:
_json = self._serialize.body(creation_input, "CreateProtectionContainerInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -564,14 +601,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -584,7 +613,7 @@ def begin_create(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: IO,
+ creation_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -598,18 +627,10 @@ def begin_create(
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
:param creation_input: Creation input. Required.
- :type creation_input: IO
+ :type creation_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -622,7 +643,7 @@ def begin_create(
self,
fabric_name: str,
protection_container_name: str,
- creation_input: Union[_models.CreateProtectionContainerInput, IO],
+ creation_input: Union[_models.CreateProtectionContainerInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ProtectionContainer]:
"""Create a protection container.
@@ -633,21 +654,10 @@ def begin_create(
:type fabric_name: str
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
- :param creation_input: Creation input. Is either a CreateProtectionContainerInput type or a IO
- type. Required.
+ :param creation_input: Creation input. Is either a CreateProtectionContainerInput type or a
+ IO[bytes] type. Required.
:type creation_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionContainerInput or IO[bytes]
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -675,12 +685,13 @@ def begin_create(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -690,26 +701,24 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}"
- }
+ return LROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _discover_protectable_item_initial(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO],
+ discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -722,7 +731,7 @@ def _discover_protectable_item_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -732,46 +741,43 @@ def _discover_protectable_item_initial(
else:
_json = self._serialize.body(discover_protectable_item_request, "DiscoverProtectableItemRequest")
- request = build_discover_protectable_item_request(
+ _request = build_discover_protectable_item_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._discover_protectable_item_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _discover_protectable_item_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem"
- }
+ return deserialized # type: ignore
@overload
def begin_discover_protectable_item(
@@ -798,14 +804,6 @@ def begin_discover_protectable_item(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -818,7 +816,7 @@ def begin_discover_protectable_item(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: IO,
+ discover_protectable_item_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -833,18 +831,10 @@ def begin_discover_protectable_item(
:type protection_container_name: str
:param discover_protectable_item_request: The request object to add a protectable item.
Required.
- :type discover_protectable_item_request: IO
+ :type discover_protectable_item_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -857,7 +847,7 @@ def begin_discover_protectable_item(
self,
fabric_name: str,
protection_container_name: str,
- discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO],
+ discover_protectable_item_request: Union[_models.DiscoverProtectableItemRequest, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ProtectionContainer]:
"""Adds a protectable item to the replication protection container.
@@ -869,20 +859,9 @@ def begin_discover_protectable_item(
:param protection_container_name: The name of the protection container. Required.
:type protection_container_name: str
:param discover_protectable_item_request: The request object to add a protectable item. Is
- either a DiscoverProtectableItemRequest type or a IO type. Required.
+ either a DiscoverProtectableItemRequest type or a IO[bytes] type. Required.
:type discover_protectable_item_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.DiscoverProtectableItemRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.DiscoverProtectableItemRequest or IO[bytes]
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -910,12 +889,13 @@ def begin_discover_protectable_item(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -925,22 +905,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_discover_protectable_item.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem"
- }
+ return LROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, protection_container_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -952,39 +928,42 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, fabric_name: str, protection_container_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -996,14 +975,6 @@ def begin_delete(self, fabric_name: str, protection_container_name: str, **kwarg
:type fabric_name: str
:param protection_container_name: Unique protection container ARM name. Required.
:type protection_container_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1017,7 +988,7 @@ def begin_delete(self, fabric_name: str, protection_container_name: str, **kwarg
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
api_version=api_version,
@@ -1026,11 +997,12 @@ def begin_delete(self, fabric_name: str, protection_container_name: str, **kwarg
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1039,26 +1011,246 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove"
- }
+ def _switch_cluster_protection_initial(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: Union[_models.SwitchClusterProtectionInput, 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(switch_input, (IOBase, bytes)):
+ _content = switch_input
+ else:
+ _json = self._serialize.body(switch_input, "SwitchClusterProtectionInput")
+
+ _request = build_switch_cluster_protection_request(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ resource_group_name=self._config.resource_group_name,
+ subscription_id=self._config.subscription_id,
+ 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)
+
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
+
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
+
+ return deserialized # type: ignore
+
+ @overload
+ def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: _models.SwitchClusterProtectionInput,
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Required.
+ :type switch_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInput
+ :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 ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @overload
+ def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: IO[bytes],
+ *,
+ content_type: str = "application/json",
+ **kwargs: Any
+ ) -> LROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Required.
+ :type switch_input: IO[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 ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :raises ~azure.core.exceptions.HttpResponseError:
+ """
+
+ @distributed_trace
+ def begin_switch_cluster_protection(
+ self,
+ resource_name: str,
+ fabric_name: str,
+ protection_container_name: str,
+ switch_input: Union[_models.SwitchClusterProtectionInput, IO[bytes]],
+ **kwargs: Any
+ ) -> LROPoller[_models.ProtectionContainer]:
+ """Switches protection from one container to another.
+
+ Operation to switch protection from one container to another.
+
+ :param resource_name: The name of the recovery services vault. Required.
+ :type resource_name: str
+ :param fabric_name: Fabric name. Required.
+ :type fabric_name: str
+ :param protection_container_name: Protection container name. Required.
+ :type protection_container_name: str
+ :param switch_input: Switch protection input. Is either a SwitchClusterProtectionInput type or
+ a IO[bytes] type. Required.
+ :type switch_input:
+ ~azure.mgmt.recoveryservicessiterecovery.models.SwitchClusterProtectionInput or IO[bytes]
+ :return: An instance of LROPoller that returns either ProtectionContainer or the result of
+ cls(response)
+ :rtype:
+ ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
+ :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.ProtectionContainer] = 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._switch_cluster_protection_initial(
+ resource_name=resource_name,
+ fabric_name=fabric_name,
+ protection_container_name=protection_container_name,
+ switch_input=switch_input,
+ 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("ProtectionContainer", 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": "location"}, **kwargs)
+ )
+ elif polling is False:
+ polling_method = cast(PollingMethod, NoPolling())
+ else:
+ polling_method = polling
+ if cont_token:
+ return LROPoller[_models.ProtectionContainer].from_continuation_token(
+ polling_method=polling_method,
+ continuation_token=cont_token,
+ client=self._client,
+ deserialization_callback=get_long_running_output,
+ )
+ return LROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _switch_protection_initial(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: Union[_models.SwitchProtectionInput, IO],
+ switch_input: Union[_models.SwitchProtectionInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.ProtectionContainer]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1071,7 +1263,7 @@ def _switch_protection_initial(
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[Optional[_models.ProtectionContainer]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1081,46 +1273,51 @@ def _switch_protection_initial(
else:
_json = self._serialize.body(switch_input, "SwitchProtectionInput")
- request = build_switch_protection_request(
+ _request = build_switch_protection_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._switch_protection_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("ProtectionContainer", pipeline_response)
+ 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")
+ )
+ response_headers["Retry-After"] = self._deserialize("str", response.headers.get("Retry-After"))
- if cls:
- return cls(pipeline_response, deserialized, {})
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
- return deserialized
+ if cls:
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
- _switch_protection_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection"
- }
+ return deserialized # type: ignore
@overload
def begin_switch_protection(
@@ -1146,14 +1343,6 @@ def begin_switch_protection(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -1166,7 +1355,7 @@ def begin_switch_protection(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: IO,
+ switch_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -1181,18 +1370,10 @@ def begin_switch_protection(
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
:param switch_input: Switch protection input. Required.
- :type switch_input: IO
+ :type switch_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -1205,7 +1386,7 @@ def begin_switch_protection(
self,
fabric_name: str,
protection_container_name: str,
- switch_input: Union[_models.SwitchProtectionInput, IO],
+ switch_input: Union[_models.SwitchProtectionInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.ProtectionContainer]:
"""Switches protection from one container to another or one replication provider to another.
@@ -1217,20 +1398,10 @@ def begin_switch_protection(
:type fabric_name: str
:param protection_container_name: Protection container name. Required.
:type protection_container_name: str
- :param switch_input: Switch protection input. Is either a SwitchProtectionInput type or a IO
- type. Required.
- :type switch_input: ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProtectionInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param switch_input: Switch protection input. Is either a SwitchProtectionInput type or a
+ IO[bytes] type. Required.
+ :type switch_input: ~azure.mgmt.recoveryservicessiterecovery.models.SwitchProtectionInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either ProtectionContainer or the result of
cls(response)
:rtype:
@@ -1258,12 +1429,13 @@ def begin_switch_protection(
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("ProtectionContainer", pipeline_response)
+ deserialized = self._deserialize("ProtectionContainer", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1273,17 +1445,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.ProtectionContainer].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_switch_protection.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection"
- }
+ return LROPoller[_models.ProtectionContainer](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainer"]:
@@ -1291,7 +1461,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainer"]:
Lists the protection containers in a vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ProtectionContainer or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.ProtectionContainer]
@@ -1303,7 +1472,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainer"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ProtectionContainerCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1314,17 +1483,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.ProtectionContainer"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1336,13 +1503,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ProtectionContainerCollection", pipeline_response)
@@ -1352,11 +1518,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1367,7 +1533,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_intents_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_intents_operations.py
index f78a2fa2418d..7a9c418cf9ce 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_intents_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protection_intents_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,6 +6,7 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
+import sys
from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, overload
import urllib.parse
@@ -20,16 +20,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -38,8 +40,8 @@
def build_list_request(
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
skip_token: Optional[str] = None,
@@ -49,7 +51,7 @@ def build_list_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -58,8 +60,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -79,12 +81,12 @@ def build_list_request(
def build_get_request(
- intent_object_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ intent_object_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -93,8 +95,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"intentObjectName": _SERIALIZER.url("intent_object_name", intent_object_name, "str"),
}
@@ -111,12 +113,12 @@ def build_get_request(
def build_create_request(
- intent_object_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ intent_object_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -126,8 +128,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"intentObjectName": _SERIALIZER.url("intent_object_name", intent_object_name, "str"),
}
@@ -176,7 +178,6 @@ def list(
:type skip_token: str
:param take_token: The page size. Default value is None.
:type take_token: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either ReplicationProtectionIntent or the result of
cls(response)
:rtype:
@@ -189,7 +190,7 @@ def list(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectionIntentCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -200,19 +201,17 @@ def list(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
skip_token=skip_token,
take_token=take_token,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -224,13 +223,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("ReplicationProtectionIntentCollection", pipeline_response)
@@ -240,11 +238,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -256,10 +254,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents"
- }
-
@distributed_trace
def get(self, intent_object_name: str, **kwargs: Any) -> _models.ReplicationProtectionIntent:
"""Gets the details of a Replication protection intent item.
@@ -268,12 +262,11 @@ def get(self, intent_object_name: str, **kwargs: Any) -> _models.ReplicationProt
:param intent_object_name: Replication protection intent name. Required.
:type intent_object_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -287,22 +280,20 @@ def get(self, intent_object_name: str, **kwargs: Any) -> _models.ReplicationProt
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.ReplicationProtectionIntent] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
intent_object_name=intent_object_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -311,16 +302,12 @@ def get(self, intent_object_name: str, **kwargs: Any) -> _models.ReplicationProt
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}"
- }
+ return deserialized # type: ignore
@overload
def create(
@@ -342,7 +329,6 @@ def create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
@@ -350,7 +336,7 @@ def create(
@overload
def create(
- self, intent_object_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, intent_object_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> _models.ReplicationProtectionIntent:
"""Create protection intent Resource.
@@ -359,11 +345,10 @@ def create(
:param intent_object_name: A name for the replication protection item. Required.
:type intent_object_name: str
:param input: Create Protection Intent Input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
@@ -371,7 +356,7 @@ def create(
@distributed_trace
def create(
- self, intent_object_name: str, input: Union[_models.CreateProtectionIntentInput, IO], **kwargs: Any
+ self, intent_object_name: str, input: Union[_models.CreateProtectionIntentInput, IO[bytes]], **kwargs: Any
) -> _models.ReplicationProtectionIntent:
"""Create protection intent Resource.
@@ -380,17 +365,14 @@ def create(
:param intent_object_name: A name for the replication protection item. Required.
:type intent_object_name: str
:param input: Create Protection Intent Input. Is either a CreateProtectionIntentInput type or a
- IO type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionIntentInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateProtectionIntentInput or
+ IO[bytes]
:return: ReplicationProtectionIntent or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.ReplicationProtectionIntent
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -413,25 +395,23 @@ def create(
else:
_json = self._serialize.body(input, "CreateProtectionIntentInput")
- request = build_create_request(
+ _request = build_create_request(
intent_object_name=intent_object_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self.create.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -440,13 +420,9 @@ def create(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response)
+ deserialized = self._deserialize("ReplicationProtectionIntent", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_plans_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_plans_operations.py
index 50d88cbeb409..a632ac311182 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_plans_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_plans_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,12 +45,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +59,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -71,12 +76,12 @@ def build_list_request(
def build_get_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -85,8 +90,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -103,12 +108,12 @@ def build_get_request(
def build_create_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -118,8 +123,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -138,19 +143,19 @@ def build_create_request(
def build_delete_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -164,12 +169,12 @@ def build_delete_request(
def build_update_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -179,8 +184,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -199,12 +204,12 @@ def build_update_request(
def build_failover_cancel_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -213,8 +218,8 @@ def build_failover_cancel_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -231,12 +236,12 @@ def build_failover_cancel_request(
def build_failover_commit_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -245,8 +250,8 @@ def build_failover_commit_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -263,12 +268,12 @@ def build_failover_commit_request(
def build_planned_failover_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -278,8 +283,8 @@ def build_planned_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -298,12 +303,12 @@ def build_planned_failover_request(
def build_reprotect_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -312,8 +317,8 @@ def build_reprotect_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -330,12 +335,12 @@ def build_reprotect_request(
def build_test_failover_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -345,8 +350,8 @@ def build_test_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -365,12 +370,12 @@ def build_test_failover_request(
def build_test_failover_cleanup_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -380,8 +385,8 @@ def build_test_failover_cleanup_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -400,12 +405,12 @@ def build_test_failover_cleanup_request(
def build_unplanned_failover_request(
- recovery_plan_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ recovery_plan_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -415,8 +420,8 @@ def build_unplanned_failover_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"recoveryPlanName": _SERIALIZER.url("recovery_plan_name", recovery_plan_name, "str"),
}
@@ -459,7 +464,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryPlan"]:
Lists the recovery plans in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryPlan or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlan]
@@ -471,7 +475,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryPlan"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPlanCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -482,17 +486,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryPlan"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -504,13 +506,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryPlanCollection", pipeline_response)
@@ -520,11 +521,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -536,10 +537,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans"
- }
-
@distributed_trace
def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryPlan:
"""Gets the requested recovery plan.
@@ -548,12 +545,11 @@ def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryPlan:
:param recovery_plan_name: Name of the recovery plan. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryPlan or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlan
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -567,22 +563,20 @@ def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryPlan:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryPlan] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -591,21 +585,17 @@ def get(self, recovery_plan_name: str, **kwargs: Any) -> _models.RecoveryPlan:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
def _create_initial(
- self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -618,7 +608,7 @@ def _create_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -628,45 +618,42 @@ def _create_initial(
else:
_json = self._serialize.body(input, "CreateRecoveryPlanInput")
- request = build_create_request(
+ _request = build_create_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -688,14 +675,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -705,7 +684,7 @@ def begin_create(
@overload
def begin_create(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Creates a recovery plan with the given details.
@@ -714,18 +693,10 @@ def begin_create(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery Plan creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -735,7 +706,7 @@ def begin_create(
@distributed_trace
def begin_create(
- self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.CreateRecoveryPlanInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Creates a recovery plan with the given details.
@@ -743,20 +714,10 @@ def begin_create(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Recovery Plan creation input. Is either a CreateRecoveryPlanInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateRecoveryPlanInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Recovery Plan creation input. Is either a CreateRecoveryPlanInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.CreateRecoveryPlanInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -783,12 +744,13 @@ def begin_create(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -798,22 +760,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, recovery_plan_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, recovery_plan_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -825,38 +783,41 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -866,14 +827,6 @@ def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[None
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -887,7 +840,7 @@ def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[None
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( # type: ignore
+ raw_result = self._delete_initial(
recovery_plan_name=recovery_plan_name,
api_version=api_version,
cls=lambda x, y, z: x,
@@ -895,11 +848,12 @@ def begin_delete(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[None
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -908,22 +862,18 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
- self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -936,7 +886,7 @@ def _update_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -946,45 +896,42 @@ def _update_initial(
else:
_json = self._serialize.body(input, "UpdateRecoveryPlanInput")
- request = build_update_request(
+ _request = build_update_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -1006,14 +953,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1023,7 +962,7 @@ def begin_update(
@overload
def begin_update(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Updates the given recovery plan.
@@ -1032,18 +971,10 @@ def begin_update(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Update recovery plan input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1053,7 +984,7 @@ def begin_update(
@distributed_trace
def begin_update(
- self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.UpdateRecoveryPlanInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Updates the given recovery plan.
@@ -1061,20 +992,10 @@ def begin_update(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Update recovery plan input. Is either a UpdateRecoveryPlanInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateRecoveryPlanInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Update recovery plan input. Is either a UpdateRecoveryPlanInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.UpdateRecoveryPlanInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1101,12 +1022,13 @@ def begin_update(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1116,20 +1038,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1141,44 +1061,41 @@ def _failover_cancel_initial(self, recovery_plan_name: str, **kwargs: Any) -> Op
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_cancel_request(
+ _request = build_failover_cancel_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_cancel_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _failover_cancel_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_failover_cancel(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[_models.RecoveryPlan]:
@@ -1188,14 +1105,6 @@ def begin_failover_cancel(self, recovery_plan_name: str, **kwargs: Any) -> LROPo
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1219,12 +1128,13 @@ def begin_failover_cancel(self, recovery_plan_name: str, **kwargs: Any) -> LROPo
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1234,20 +1144,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_cancel.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCancel"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1259,44 +1167,41 @@ def _failover_commit_initial(self, recovery_plan_name: str, **kwargs: Any) -> Op
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_failover_commit_request(
+ _request = build_failover_commit_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._failover_commit_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _failover_commit_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_failover_commit(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[_models.RecoveryPlan]:
@@ -1306,14 +1211,6 @@ def begin_failover_commit(self, recovery_plan_name: str, **kwargs: Any) -> LROPo
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1337,12 +1234,13 @@ def begin_failover_commit(self, recovery_plan_name: str, **kwargs: Any) -> LROPo
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1352,22 +1250,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_failover_commit.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _planned_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1380,7 +1276,7 @@ def _planned_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1390,45 +1286,42 @@ def _planned_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanPlannedFailoverInput")
- request = build_planned_failover_request(
+ _request = build_planned_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._planned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _planned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_planned_failover(
@@ -1450,14 +1343,6 @@ def begin_planned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1467,7 +1352,7 @@ def begin_planned_failover(
@overload
def begin_planned_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute planned failover of the recovery plan.
@@ -1476,18 +1361,10 @@ def begin_planned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1497,7 +1374,7 @@ def begin_planned_failover(
@distributed_trace
def begin_planned_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanPlannedFailoverInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute planned failover of the recovery plan.
@@ -1505,21 +1382,10 @@ def begin_planned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :param input: Failover input. Is either a RecoveryPlanPlannedFailoverInput type or a IO type.
- Required.
+ :param input: Failover input. Is either a RecoveryPlanPlannedFailoverInput type or a IO[bytes]
+ type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanPlannedFailoverInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1546,12 +1412,13 @@ def begin_planned_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1561,20 +1428,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_planned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1586,61 +1451,51 @@ def _reprotect_initial(self, recovery_plan_name: str, **kwargs: Any) -> Optional
_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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_reprotect_request(
+ _request = build_reprotect_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._reprotect_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _reprotect_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_reprotect(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[_models.RecoveryPlan]:
"""Execute reprotect of the recovery plan.
- The operation to reprotect(reverse replicate) a recovery plan.
+ The operation to reprotect(reverse replicate) a recovery plan. This api is for deprecated
+ scenarios and no longer works.
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1664,12 +1519,13 @@ def begin_reprotect(self, recovery_plan_name: str, **kwargs: Any) -> LROPoller[_
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1679,22 +1535,20 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_reprotect.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1707,7 +1561,7 @@ def _test_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1717,45 +1571,42 @@ def _test_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanTestFailoverInput")
- request = build_test_failover_request(
+ _request = build_test_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _test_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_test_failover(
@@ -1777,14 +1628,6 @@ def begin_test_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1794,7 +1637,7 @@ def begin_test_failover(
@overload
def begin_test_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute test failover of the recovery plan.
@@ -1803,18 +1646,10 @@ def begin_test_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1824,7 +1659,7 @@ def begin_test_failover(
@distributed_trace
def begin_test_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO], **kwargs: Any
+ self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute test failover of the recovery plan.
@@ -1833,20 +1668,9 @@ def begin_test_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover input. Is either a RecoveryPlanTestFailoverInput type
- or a IO type. Required.
+ or a IO[bytes] type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverInput or
- IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -1873,12 +1697,13 @@ def begin_test_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -1888,22 +1713,23 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _test_failover_cleanup_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1916,7 +1742,7 @@ def _test_failover_cleanup_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -1926,45 +1752,42 @@ def _test_failover_cleanup_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanTestFailoverCleanupInput")
- request = build_test_failover_cleanup_request(
+ _request = build_test_failover_cleanup_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._test_failover_cleanup_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _test_failover_cleanup_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup"
- }
+ return deserialized # type: ignore
@overload
def begin_test_failover_cleanup(
@@ -1987,14 +1810,6 @@ def begin_test_failover_cleanup(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2004,7 +1819,7 @@ def begin_test_failover_cleanup(
@overload
def begin_test_failover_cleanup(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute test failover cleanup of the recovery plan.
@@ -2013,18 +1828,10 @@ def begin_test_failover_cleanup(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover cleanup input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2034,7 +1841,10 @@ def begin_test_failover_cleanup(
@distributed_trace
def begin_test_failover_cleanup(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO], **kwargs: Any
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanTestFailoverCleanupInput, IO[bytes]],
+ **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute test failover cleanup of the recovery plan.
@@ -2043,20 +1853,10 @@ def begin_test_failover_cleanup(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan test failover cleanup input. Is either a
- RecoveryPlanTestFailoverCleanupInput type or a IO type. Required.
+ RecoveryPlanTestFailoverCleanupInput type or a IO[bytes] type. Required.
:type input:
- ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverCleanupInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanTestFailoverCleanupInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2083,12 +1883,13 @@ def begin_test_failover_cleanup(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2098,22 +1899,23 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_test_failover_cleanup.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
def _unplanned_failover_initial(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO], **kwargs: Any
- ) -> Optional[_models.RecoveryPlan]:
- error_map = {
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -2126,7 +1928,7 @@ def _unplanned_failover_initial(
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[Optional[_models.RecoveryPlan]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -2136,45 +1938,42 @@ def _unplanned_failover_initial(
else:
_json = self._serialize.body(input, "RecoveryPlanUnplannedFailoverInput")
- request = build_unplanned_failover_request(
+ _request = build_unplanned_failover_request(
recovery_plan_name=recovery_plan_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._unplanned_failover_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryPlan", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _unplanned_failover_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover"
- }
+ return deserialized # type: ignore
@overload
def begin_unplanned_failover(
@@ -2196,14 +1995,6 @@ def begin_unplanned_failover(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2213,7 +2004,7 @@ def begin_unplanned_failover(
@overload
def begin_unplanned_failover(
- self, recovery_plan_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, recovery_plan_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute unplanned failover of the recovery plan.
@@ -2222,18 +2013,10 @@ def begin_unplanned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan unplanned failover input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2243,7 +2026,10 @@ def begin_unplanned_failover(
@distributed_trace
def begin_unplanned_failover(
- self, recovery_plan_name: str, input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO], **kwargs: Any
+ self,
+ recovery_plan_name: str,
+ input: Union[_models.RecoveryPlanUnplannedFailoverInput, IO[bytes]],
+ **kwargs: Any
) -> LROPoller[_models.RecoveryPlan]:
"""Execute unplanned failover of the recovery plan.
@@ -2252,20 +2038,9 @@ def begin_unplanned_failover(
:param recovery_plan_name: Recovery plan name. Required.
:type recovery_plan_name: str
:param input: Recovery plan unplanned failover input. Is either a
- RecoveryPlanUnplannedFailoverInput type or a IO type. Required.
+ RecoveryPlanUnplannedFailoverInput type or a IO[bytes] type. Required.
:type input: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryPlanUnplannedFailoverInput
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either RecoveryPlan or the result of
cls(response)
:rtype:
@@ -2292,12 +2067,13 @@ def begin_unplanned_failover(
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("RecoveryPlan", pipeline_response)
+ deserialized = self._deserialize("RecoveryPlan", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -2307,14 +2083,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryPlan].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_unplanned_failover.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover"
- }
+ return LROPoller[_models.RecoveryPlan](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_services_providers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_services_providers_operations.py
index 9899bf21caf6..27263a2d298f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_services_providers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_recovery_services_providers_operations.py
@@ -7,7 +7,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +17,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +32,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,13 +44,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +59,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -74,15 +79,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
provider_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -91,8 +96,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"providerName": _SERIALIZER.url("provider_name", provider_name, "str"),
@@ -112,15 +117,15 @@ def build_get_request(
def build_create_request(
fabric_name: str,
provider_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -130,8 +135,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"providerName": _SERIALIZER.url("provider_name", provider_name, "str"),
@@ -153,22 +158,22 @@ def build_create_request(
def build_purge_request(
fabric_name: str,
provider_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"providerName": _SERIALIZER.url("provider_name", provider_name, "str"),
@@ -185,15 +190,15 @@ def build_purge_request(
def build_refresh_provider_request(
fabric_name: str,
provider_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -202,8 +207,8 @@ def build_refresh_provider_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"providerName": _SERIALIZER.url("provider_name", provider_name, "str"),
@@ -223,22 +228,22 @@ def build_refresh_provider_request(
def build_delete_request(
fabric_name: str,
provider_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"providerName": _SERIALIZER.url("provider_name", provider_name, "str"),
@@ -253,12 +258,12 @@ def build_delete_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -267,8 +272,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -283,7 +288,7 @@ def build_list_request(
return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs)
-class ReplicationRecoveryServicesProvidersOperations:
+class ReplicationRecoveryServicesProvidersOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -312,7 +317,6 @@ def list_by_replication_fabrics(
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -325,7 +329,7 @@ def list_by_replication_fabrics(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProviderCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -336,18 +340,16 @@ def list_by_replication_fabrics(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -359,13 +361,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryServicesProviderCollection", pipeline_response)
@@ -375,11 +376,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -391,10 +392,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders"
- }
-
@distributed_trace
def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _models.RecoveryServicesProvider:
"""Gets the details of a recovery services provider.
@@ -405,12 +402,11 @@ def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _models.Re
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: RecoveryServicesProvider or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.RecoveryServicesProvider
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -424,23 +420,21 @@ def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _models.Re
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProvider] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -449,25 +443,21 @@ def get(self, fabric_name: str, provider_name: str, **kwargs: Any) -> _models.Re
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO],
+ add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.RecoveryServicesProvider]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -480,7 +470,7 @@ def _create_initial(
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[Optional[_models.RecoveryServicesProvider]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -490,46 +480,43 @@ def _create_initial(
else:
_json = self._serialize.body(add_provider_input, "AddRecoveryServicesProviderInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -555,14 +542,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -575,7 +554,7 @@ def begin_create(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: IO,
+ add_provider_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -589,18 +568,10 @@ def begin_create(
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
:param add_provider_input: Add provider input. Required.
- :type add_provider_input: IO
+ :type add_provider_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -613,7 +584,7 @@ def begin_create(
self,
fabric_name: str,
provider_name: str,
- add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO],
+ add_provider_input: Union[_models.AddRecoveryServicesProviderInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.RecoveryServicesProvider]:
"""Adds a recovery services provider.
@@ -625,20 +596,9 @@ def begin_create(
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
:param add_provider_input: Add provider input. Is either a AddRecoveryServicesProviderInput
- type or a IO type. Required.
+ type or a IO[bytes] type. Required.
:type add_provider_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.AddRecoveryServicesProviderInput or IO[bytes]
:return: An instance of LROPoller that returns either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -666,12 +626,13 @@ def begin_create(
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("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -681,22 +642,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryServicesProvider].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return LROPoller[_models.RecoveryServicesProvider](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _purge_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _purge_initial(self, fabric_name: str, provider_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -708,39 +665,42 @@ def _purge_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_purge_request(
+ _request = build_purge_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._purge_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _purge_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -752,14 +712,6 @@ def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any) -> LR
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -773,7 +725,7 @@ def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any) -> LR
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._purge_initial( # type: ignore
+ raw_result = self._purge_initial(
fabric_name=fabric_name,
provider_name=provider_name,
api_version=api_version,
@@ -782,11 +734,12 @@ def begin_purge(self, fabric_name: str, provider_name: str, **kwargs: Any) -> LR
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -795,22 +748,16 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_purge.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
- def _refresh_provider_initial(
- self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> Optional[_models.RecoveryServicesProvider]:
- error_map = {
+ def _refresh_provider_initial(self, fabric_name: str, provider_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -822,45 +769,42 @@ def _refresh_provider_initial(
_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[Optional[_models.RecoveryServicesProvider]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_refresh_provider_request(
+ _request = build_refresh_provider_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._refresh_provider_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _refresh_provider_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_refresh_provider(
@@ -874,14 +818,6 @@ def begin_refresh_provider(
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -906,12 +842,13 @@ def begin_refresh_provider(
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("RecoveryServicesProvider", pipeline_response)
+ deserialized = self._deserialize("RecoveryServicesProvider", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -921,22 +858,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.RecoveryServicesProvider].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_refresh_provider.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider"
- }
+ return LROPoller[_models.RecoveryServicesProvider](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, provider_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, fabric_name: str, provider_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -948,39 +881,42 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
provider_name=provider_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -995,14 +931,6 @@ def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any) -> L
:type fabric_name: str
:param provider_name: Recovery services provider name. Required.
:type provider_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -1016,7 +944,7 @@ def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any) -> L
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
provider_name=provider_name,
api_version=api_version,
@@ -1025,11 +953,12 @@ def begin_delete(self, fabric_name: str, provider_name: str, **kwargs: Any) -> L
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -1038,17 +967,13 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.RecoveryServicesProvider"]:
@@ -1056,7 +981,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryServicesProvider"]:
Lists the registered recovery services providers in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either RecoveryServicesProvider or the result of
cls(response)
:rtype:
@@ -1069,7 +993,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryServicesProvider"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.RecoveryServicesProviderCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1080,17 +1004,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.RecoveryServicesProvider"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1102,13 +1024,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("RecoveryServicesProviderCollection", pipeline_response)
@@ -1118,11 +1039,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1133,7 +1054,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classification_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classification_mappings_operations.py
index 1ee2a303ef3c..2e74fa708887 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classification_mappings_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classification_mappings_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +16,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +31,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,18 +43,18 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_storage_classifications_request(
+def build_list_by_replication_storage_classifications_request( # pylint: disable=name-too-long
fabric_name: str,
storage_classification_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -59,8 +63,8 @@ def build_list_by_replication_storage_classifications_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"storageClassificationName": _SERIALIZER.url("storage_classification_name", storage_classification_name, "str"),
@@ -81,15 +85,15 @@ def build_get_request(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -98,8 +102,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"storageClassificationName": _SERIALIZER.url("storage_classification_name", storage_classification_name, "str"),
@@ -123,15 +127,15 @@ def build_create_request(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -141,8 +145,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"storageClassificationName": _SERIALIZER.url("storage_classification_name", storage_classification_name, "str"),
@@ -168,22 +172,22 @@ def build_delete_request(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"storageClassificationName": _SERIALIZER.url("storage_classification_name", storage_classification_name, "str"),
@@ -201,12 +205,12 @@ def build_delete_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -215,8 +219,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -231,7 +235,7 @@ def build_list_request(
return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs)
-class ReplicationStorageClassificationMappingsOperations:
+class ReplicationStorageClassificationMappingsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -251,7 +255,7 @@ def __init__(self, *args, **kwargs):
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
@distributed_trace
- def list_by_replication_storage_classifications(
+ def list_by_replication_storage_classifications( # pylint: disable=name-too-long
self, fabric_name: str, storage_classification_name: str, **kwargs: Any
) -> Iterable["_models.StorageClassificationMapping"]:
"""Gets the list of storage classification mappings objects under a storage.
@@ -262,7 +266,6 @@ def list_by_replication_storage_classifications(
:type fabric_name: str
:param storage_classification_name: Storage classification name. Required.
:type storage_classification_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassificationMapping or the result of
cls(response)
:rtype:
@@ -275,7 +278,7 @@ def list_by_replication_storage_classifications(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -286,19 +289,17 @@ def list_by_replication_storage_classifications(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_storage_classifications_request(
+ _request = build_list_by_replication_storage_classifications_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_storage_classifications.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -310,13 +311,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationMappingCollection", pipeline_response)
@@ -326,11 +326,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -342,10 +342,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_storage_classifications.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings"
- }
-
@distributed_trace
def get(
self,
@@ -364,12 +360,11 @@ def get(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: StorageClassificationMapping or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMapping
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -383,24 +378,22 @@ def get(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMapping] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -409,26 +402,22 @@ def get(
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("StorageClassificationMapping", pipeline_response)
+ deserialized = self._deserialize("StorageClassificationMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: Union[_models.StorageClassificationMappingInput, IO],
+ pairing_input: Union[_models.StorageClassificationMappingInput, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.StorageClassificationMapping]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -441,7 +430,7 @@ def _create_initial(
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[Optional[_models.StorageClassificationMapping]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -451,47 +440,44 @@ def _create_initial(
else:
_json = self._serialize.body(pairing_input, "StorageClassificationMappingInput")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("StorageClassificationMapping", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -520,14 +506,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -541,7 +519,7 @@ def begin_create(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: IO,
+ pairing_input: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -557,18 +535,10 @@ def begin_create(
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
:param pairing_input: Pairing input. Required.
- :type pairing_input: IO
+ :type pairing_input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -582,7 +552,7 @@ def begin_create(
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
- pairing_input: Union[_models.StorageClassificationMappingInput, IO],
+ pairing_input: Union[_models.StorageClassificationMappingInput, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.StorageClassificationMapping]:
"""Create storage classification mapping.
@@ -595,21 +565,10 @@ def begin_create(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :param pairing_input: Pairing input. Is either a StorageClassificationMappingInput type or a IO
- type. Required.
+ :param pairing_input: Pairing input. Is either a StorageClassificationMappingInput type or a
+ IO[bytes] type. Required.
:type pairing_input:
- ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMappingInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassificationMappingInput or IO[bytes]
:return: An instance of LROPoller that returns either StorageClassificationMapping or the
result of cls(response)
:rtype:
@@ -638,12 +597,13 @@ def begin_create(
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("StorageClassificationMapping", pipeline_response)
+ deserialized = self._deserialize("StorageClassificationMapping", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -653,26 +613,24 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.StorageClassificationMapping].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return LROPoller[_models.StorageClassificationMapping](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
+ def _delete_initial(
self,
fabric_name: str,
storage_classification_name: str,
storage_classification_mapping_name: str,
**kwargs: Any
- ) -> None:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -684,40 +642,43 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(
@@ -737,14 +698,6 @@ def begin_delete(
:type storage_classification_name: str
:param storage_classification_mapping_name: Storage classification mapping name. Required.
:type storage_classification_mapping_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -758,7 +711,7 @@ def begin_delete(
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
storage_classification_mapping_name=storage_classification_mapping_name,
@@ -768,11 +721,12 @@ def begin_delete(
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -781,17 +735,13 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.StorageClassificationMapping"]:
@@ -799,7 +749,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassificationMapping"
Lists the storage classification mappings in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassificationMapping or the result of
cls(response)
:rtype:
@@ -812,7 +761,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassificationMapping"
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationMappingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -823,17 +772,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassificationMapping"
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -845,13 +792,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationMappingCollection", pipeline_response)
@@ -861,11 +807,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -876,7 +822,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classifications_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classifications_operations.py
index ed001c3b67fc..746ebe55f056 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classifications_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_storage_classifications_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,13 +38,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -51,8 +53,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -71,15 +73,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
storage_classification_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -88,8 +90,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"storageClassificationName": _SERIALIZER.url("storage_classification_name", storage_classification_name, "str"),
@@ -107,12 +109,12 @@ def build_get_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -121,8 +123,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -137,7 +139,7 @@ def build_list_request(
return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs)
-class ReplicationStorageClassificationsOperations:
+class ReplicationStorageClassificationsOperations: # pylint: disable=name-too-long
"""
.. warning::
**DO NOT** instantiate this class directly.
@@ -164,7 +166,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
:param fabric_name: Site name of interest. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassification or the result of
cls(response)
:rtype:
@@ -177,7 +178,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -188,18 +189,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -211,13 +210,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationCollection", pipeline_response)
@@ -227,11 +225,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -243,10 +241,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications"
- }
-
@distributed_trace
def get(self, fabric_name: str, storage_classification_name: str, **kwargs: Any) -> _models.StorageClassification:
"""Gets the details of a storage classification.
@@ -257,12 +251,11 @@ def get(self, fabric_name: str, storage_classification_name: str, **kwargs: Any)
:type fabric_name: str
:param storage_classification_name: Storage classification name. Required.
:type storage_classification_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: StorageClassification or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.StorageClassification
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -276,23 +269,21 @@ def get(self, fabric_name: str, storage_classification_name: str, **kwargs: Any)
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassification] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
storage_classification_name=storage_classification_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -301,16 +292,12 @@ def get(self, fabric_name: str, storage_classification_name: str, **kwargs: Any)
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("StorageClassification", pipeline_response)
+ deserialized = self._deserialize("StorageClassification", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.StorageClassification"]:
@@ -318,7 +305,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassification"]:
Lists the storage classifications in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either StorageClassification or the result of
cls(response)
:rtype:
@@ -331,7 +317,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassification"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.StorageClassificationCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -342,17 +328,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.StorageClassification"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -364,13 +348,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("StorageClassificationCollection", pipeline_response)
@@ -380,11 +363,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -395,7 +378,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_health_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_health_operations.py
index fc815bfb4d6b..aeace5ffd497 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_health_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_health_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,7 +5,8 @@
# 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, Callable, Dict, Optional, TypeVar, Union, cast
+import sys
+from typing import Any, Callable, Dict, Iterator, Optional, TypeVar, Union, cast
from azure.core.exceptions import (
ClientAuthenticationError,
@@ -14,12 +14,13 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -27,8 +28,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,11 +40,11 @@
_SERIALIZER.client_side_validation = False
-def build_get_request(resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest:
+def build_get_request(resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -49,8 +53,8 @@ def build_get_request(resource_name: str, resource_group_name: str, subscription
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -66,12 +70,12 @@ def build_get_request(resource_name: str, resource_group_name: str, subscription
def build_refresh_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -80,8 +84,8 @@ def build_refresh_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -121,12 +125,11 @@ def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
Gets the health details of the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VaultHealthDetails or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VaultHealthDetails
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -140,21 +143,19 @@ def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultHealthDetails] = kwargs.pop("cls", None)
- request = build_get_request(
- resource_name=self._config.resource_name,
+ _request = build_get_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -163,19 +164,15 @@ def get(self, **kwargs: Any) -> _models.VaultHealthDetails:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = self._deserialize("VaultHealthDetails", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth"
- }
+ return deserialized # type: ignore
- def _refresh_initial(self, **kwargs: Any) -> Optional[_models.VaultHealthDetails]:
- error_map = {
+ def _refresh_initial(self, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -187,43 +184,40 @@ def _refresh_initial(self, **kwargs: Any) -> Optional[_models.VaultHealthDetails
_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[Optional[_models.VaultHealthDetails]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_refresh_request(
- resource_name=self._config.resource_name,
+ _request = build_refresh_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._refresh_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
-
- return deserialized
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _refresh_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_refresh(self, **kwargs: Any) -> LROPoller[_models.VaultHealthDetails]:
@@ -231,14 +225,6 @@ def begin_refresh(self, **kwargs: Any) -> LROPoller[_models.VaultHealthDetails]:
Refreshes health summary of the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VaultHealthDetails or the result of
cls(response)
:rtype:
@@ -257,12 +243,13 @@ def begin_refresh(self, **kwargs: Any) -> LROPoller[_models.VaultHealthDetails]:
raw_result = self._refresh_initial(
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):
- deserialized = self._deserialize("VaultHealthDetails", pipeline_response)
+ deserialized = self._deserialize("VaultHealthDetails", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -272,14 +259,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.VaultHealthDetails].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_refresh.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth/default/refresh"
- }
+ return LROPoller[_models.VaultHealthDetails](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_setting_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_setting_operations.py
index d500572de548..ba0f57a12191 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_setting_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replication_vault_setting_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +16,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +31,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -40,12 +44,12 @@
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +58,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -71,12 +75,12 @@ def build_list_request(
def build_get_request(
- vault_setting_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ vault_setting_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -85,8 +89,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"vaultSettingName": _SERIALIZER.url("vault_setting_name", vault_setting_name, "str"),
}
@@ -103,12 +107,12 @@ def build_get_request(
def build_create_request(
- vault_setting_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ vault_setting_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -118,8 +122,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"vaultSettingName": _SERIALIZER.url("vault_setting_name", vault_setting_name, "str"),
}
@@ -162,7 +166,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.VaultSetting"]:
Gets the list of vault setting. This includes the Migration Hub connection settings.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VaultSetting or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VaultSetting]
@@ -174,7 +177,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.VaultSetting"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultSettingCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -185,17 +188,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.VaultSetting"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -207,13 +208,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("VaultSettingCollection", pipeline_response)
@@ -223,11 +223,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -239,10 +239,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings"
- }
-
@distributed_trace
def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSetting:
"""Gets the vault setting.
@@ -251,12 +247,11 @@ def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSetting:
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VaultSetting or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSetting
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -270,22 +265,20 @@ def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSetting:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VaultSetting] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
vault_setting_name=vault_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -294,21 +287,17 @@ def get(self, vault_setting_name: str, **kwargs: Any) -> _models.VaultSetting:
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultSetting", pipeline_response)
+ deserialized = self._deserialize("VaultSetting", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return deserialized # type: ignore
def _create_initial(
- self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO], **kwargs: Any
- ) -> _models.VaultSetting:
- error_map = {
+ self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO[bytes]], **kwargs: Any
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -321,7 +310,7 @@ def _create_initial(
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.VaultSetting] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -331,43 +320,42 @@ def _create_initial(
else:
_json = self._serialize.body(input, "VaultSettingCreationInput")
- request = build_create_request(
+ _request = build_create_request(
vault_setting_name=vault_setting_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [200]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VaultSetting", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -390,14 +378,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -407,7 +387,7 @@ def begin_create(
@overload
def begin_create(
- self, vault_setting_name: str, input: IO, *, content_type: str = "application/json", **kwargs: Any
+ self, vault_setting_name: str, input: IO[bytes], *, content_type: str = "application/json", **kwargs: Any
) -> LROPoller[_models.VaultSetting]:
"""Updates vault setting. A vault setting object is a singleton per vault and it is always present
by default.
@@ -417,18 +397,10 @@ def begin_create(
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
:param input: Vault setting creation input. Required.
- :type input: IO
+ :type input: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -438,7 +410,7 @@ def begin_create(
@distributed_trace
def begin_create(
- self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO], **kwargs: Any
+ self, vault_setting_name: str, input: Union[_models.VaultSettingCreationInput, IO[bytes]], **kwargs: Any
) -> LROPoller[_models.VaultSetting]:
"""Updates vault setting. A vault setting object is a singleton per vault and it is always present
by default.
@@ -447,20 +419,10 @@ def begin_create(
:param vault_setting_name: Vault setting name. Required.
:type vault_setting_name: str
- :param input: Vault setting creation input. Is either a VaultSettingCreationInput type or a IO
- type. Required.
- :type input: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSettingCreationInput or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ :param input: Vault setting creation input. Is either a VaultSettingCreationInput type or a
+ IO[bytes] type. Required.
+ :type input: ~azure.mgmt.recoveryservicessiterecovery.models.VaultSettingCreationInput or
+ IO[bytes]
:return: An instance of LROPoller that returns either VaultSetting or the result of
cls(response)
:rtype:
@@ -487,12 +449,13 @@ def begin_create(
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("VaultSetting", pipeline_response)
+ deserialized = self._deserialize("VaultSetting", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -502,14 +465,12 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.VaultSetting].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultSettings/{vaultSettingName}"
- }
+ return LROPoller[_models.VaultSetting](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replicationv_centers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replicationv_centers_operations.py
index 890baebb87eb..b58869916260 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replicationv_centers_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_replicationv_centers_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7,7 +6,8 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from io import IOBase
-from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload
+import sys
+from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload
import urllib.parse
from azure.core.exceptions import (
@@ -16,13 +16,14 @@
ResourceExistsError,
ResourceNotFoundError,
ResourceNotModifiedError,
+ StreamClosedError,
+ StreamConsumedError,
map_error,
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
from azure.core.polling import LROPoller, NoPolling, PollingMethod
-from azure.core.rest import HttpRequest
+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
@@ -30,8 +31,11 @@
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -39,13 +43,13 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_fabrics_request(
- fabric_name: str, resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+def build_list_by_replication_fabrics_request( # pylint: disable=name-too-long
+ fabric_name: str, resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +58,8 @@ def build_list_by_replication_fabrics_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
}
@@ -74,15 +78,15 @@ def build_list_by_replication_fabrics_request(
def build_get_request(
fabric_name: str,
vcenter_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -91,8 +95,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"vcenterName": _SERIALIZER.url("vcenter_name", vcenter_name, "str"),
@@ -112,15 +116,15 @@ def build_get_request(
def build_create_request(
fabric_name: str,
vcenter_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -130,8 +134,8 @@ def build_create_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"vcenterName": _SERIALIZER.url("vcenter_name", vcenter_name, "str"),
@@ -153,22 +157,22 @@ def build_create_request(
def build_delete_request(
fabric_name: str,
vcenter_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
# Construct URL
_url = kwargs.pop(
"template_url",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"vcenterName": _SERIALIZER.url("vcenter_name", vcenter_name, "str"),
@@ -185,15 +189,15 @@ def build_delete_request(
def build_update_request(
fabric_name: str,
vcenter_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
accept = _headers.pop("Accept", "application/json")
@@ -203,8 +207,8 @@ def build_update_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"vcenterName": _SERIALIZER.url("vcenter_name", vcenter_name, "str"),
@@ -224,12 +228,12 @@ def build_update_request(
def build_list_request(
- resource_name: str, resource_group_name: str, subscription_id: str, **kwargs: Any
+ resource_group_name: str, resource_name: str, subscription_id: str, **kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -238,8 +242,8 @@ def build_list_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -281,7 +285,6 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
:param fabric_name: Fabric name. Required.
:type fabric_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VCenter or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -292,7 +295,7 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenterCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -303,18 +306,16 @@ def list_by_replication_fabrics(self, fabric_name: str, **kwargs: Any) -> Iterab
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_fabrics_request(
+ _request = build_list_by_replication_fabrics_request(
fabric_name=fabric_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_fabrics.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -326,13 +327,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("VCenterCollection", pipeline_response)
@@ -342,11 +342,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -358,10 +358,6 @@ def get_next(next_link=None):
return ItemPaged(get_next, extract_data)
- list_by_replication_fabrics.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters"
- }
-
@distributed_trace
def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _models.VCenter:
"""Gets the details of a vCenter.
@@ -372,12 +368,11 @@ def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _models.VCe
:type fabric_name: str
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: VCenter or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.VCenter
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -391,23 +386,21 @@ def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _models.VCe
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenter] = kwargs.pop("cls", None)
- request = build_get_request(
+ _request = build_get_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -416,25 +409,21 @@ def get(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> _models.VCe
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
def _create_initial(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: Union[_models.AddVCenterRequest, IO],
+ add_v_center_request: Union[_models.AddVCenterRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.VCenter]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -447,7 +436,7 @@ def _create_initial(
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[Optional[_models.VCenter]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -457,46 +446,43 @@ def _create_initial(
else:
_json = self._serialize.body(add_v_center_request, "AddVCenterRequest")
- request = build_create_request(
+ _request = build_create_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._create_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _create_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@overload
def begin_create(
@@ -521,14 +507,6 @@ def begin_create(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -539,7 +517,7 @@ def begin_create(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: IO,
+ add_v_center_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -553,18 +531,10 @@ def begin_create(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param add_v_center_request: The input to the add vCenter operation. Required.
- :type add_v_center_request: IO
+ :type add_v_center_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -575,7 +545,7 @@ def begin_create(
self,
fabric_name: str,
vcenter_name: str,
- add_v_center_request: Union[_models.AddVCenterRequest, IO],
+ add_v_center_request: Union[_models.AddVCenterRequest, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.VCenter]:
"""Add vCenter.
@@ -587,20 +557,9 @@ def begin_create(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param add_v_center_request: The input to the add vCenter operation. Is either a
- AddVCenterRequest type or a IO type. Required.
+ AddVCenterRequest type or a IO[bytes] type. Required.
:type add_v_center_request: ~azure.mgmt.recoveryservicessiterecovery.models.AddVCenterRequest
- or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ or IO[bytes]
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -626,12 +585,13 @@ def begin_create(
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("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -641,22 +601,18 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.VCenter].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_create.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return LROPoller[_models.VCenter](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
- def _delete_initial( # pylint: disable=inconsistent-return-statements
- self, fabric_name: str, vcenter_name: str, **kwargs: Any
- ) -> None:
- error_map = {
+ def _delete_initial(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -668,39 +624,42 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements
_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)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
- request = build_delete_request(
+ _request = build_delete_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self._delete_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
if response.status_code not in [202, 204]:
+ try:
+ response.read() # Load the body in memory and close the socket
+ except (StreamConsumedError, StreamClosedError):
+ pass
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
+
if cls:
- return cls(pipeline_response, None, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- _delete_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@distributed_trace
def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> LROPoller[None]:
@@ -712,14 +671,6 @@ def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> LR
:type fabric_name: str
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
: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:
@@ -733,7 +684,7 @@ def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> LR
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( # type: ignore
+ raw_result = self._delete_initial(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
api_version=api_version,
@@ -742,11 +693,12 @@ def begin_delete(self, fabric_name: str, vcenter_name: str, **kwargs: Any) -> LR
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, {})
+ return cls(pipeline_response, None, {}) # type: ignore
if polling is True:
polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs))
@@ -755,26 +707,22 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_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(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_delete.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore
def _update_initial(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: Union[_models.UpdateVCenterRequest, IO],
+ update_v_center_request: Union[_models.UpdateVCenterRequest, IO[bytes]],
**kwargs: Any
- ) -> Optional[_models.VCenter]:
- error_map = {
+ ) -> Iterator[bytes]:
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -787,7 +735,7 @@ def _update_initial(
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[Optional[_models.VCenter]] = kwargs.pop("cls", None)
+ cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None)
content_type = content_type or "application/json"
_json = None
@@ -797,46 +745,43 @@ def _update_initial(
else:
_json = self._serialize.body(update_v_center_request, "UpdateVCenterRequest")
- request = build_update_request(
+ _request = build_update_request(
fabric_name=fabric_name,
vcenter_name=vcenter_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
content_type=content_type,
json=_json,
content=_content,
- template_url=self._update_initial.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
- _stream = False
+ _decompress = kwargs.pop("decompress", True)
+ _stream = True
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _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)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = None
- if response.status_code == 200:
- deserialized = self._deserialize("VCenter", pipeline_response)
+ deserialized = response.stream_download(self._client._pipeline, decompress=_decompress)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- _update_initial.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return deserialized # type: ignore
@overload
def begin_update(
@@ -862,14 +807,6 @@ def begin_update(
:keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -880,7 +817,7 @@ def begin_update(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: IO,
+ update_v_center_request: IO[bytes],
*,
content_type: str = "application/json",
**kwargs: Any
@@ -894,18 +831,10 @@ def begin_update(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param update_v_center_request: The input to the update vCenter operation. Required.
- :type update_v_center_request: IO
+ :type update_v_center_request: IO[bytes]
:keyword content_type: Body Parameter content-type. Content type parameter for binary body.
Default value is "application/json".
:paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -916,7 +845,7 @@ def begin_update(
self,
fabric_name: str,
vcenter_name: str,
- update_v_center_request: Union[_models.UpdateVCenterRequest, IO],
+ update_v_center_request: Union[_models.UpdateVCenterRequest, IO[bytes]],
**kwargs: Any
) -> LROPoller[_models.VCenter]:
"""Update vCenter operation.
@@ -928,20 +857,9 @@ def begin_update(
:param vcenter_name: vcenter name. Required.
:type vcenter_name: str
:param update_v_center_request: The input to the update vCenter operation. Is either a
- UpdateVCenterRequest type or a IO type. Required.
+ UpdateVCenterRequest type or a IO[bytes] type. Required.
:type update_v_center_request:
- ~azure.mgmt.recoveryservicessiterecovery.models.UpdateVCenterRequest or IO
- :keyword content_type: Body Parameter content-type. Known values are: 'application/json'.
- Default value is None.
- :paramtype content_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
- :keyword str continuation_token: A continuation token to restart a poller from a saved state.
- :keyword polling: By default, your polling method will be ARMPolling. Pass in False for this
- operation to not poll, or pass in your own initialized polling object for a personal polling
- strategy.
- :paramtype polling: bool or ~azure.core.polling.PollingMethod
- :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
- Retry-After header is present.
+ ~azure.mgmt.recoveryservicessiterecovery.models.UpdateVCenterRequest or IO[bytes]
:return: An instance of LROPoller that returns either VCenter or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -967,12 +885,13 @@ def begin_update(
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("VCenter", pipeline_response)
+ deserialized = self._deserialize("VCenter", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
return deserialized
if polling is True:
@@ -982,17 +901,15 @@ def get_long_running_output(pipeline_response):
else:
polling_method = polling
if cont_token:
- return LROPoller.from_continuation_token(
+ return LROPoller[_models.VCenter].from_continuation_token(
polling_method=polling_method,
continuation_token=cont_token,
client=self._client,
deserialization_callback=get_long_running_output,
)
- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore
-
- begin_update.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vcenterName}"
- }
+ return LROPoller[_models.VCenter](
+ self._client, raw_result, get_long_running_output, polling_method # type: ignore
+ )
@distributed_trace
def list(self, **kwargs: Any) -> Iterable["_models.VCenter"]:
@@ -1000,7 +917,6 @@ def list(self, **kwargs: Any) -> Iterable["_models.VCenter"]:
Lists the vCenter servers registered in the vault.
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either VCenter or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.VCenter]
:raises ~azure.core.exceptions.HttpResponseError:
@@ -1011,7 +927,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.VCenter"]:
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.VCenterCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -1022,17 +938,15 @@ def list(self, **kwargs: Any) -> Iterable["_models.VCenter"]:
def prepare_request(next_link=None):
if not next_link:
- request = build_list_request(
- resource_name=self._config.resource_name,
+ _request = build_list_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -1044,13 +958,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("VCenterCollection", pipeline_response)
@@ -1060,11 +973,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -1075,7 +988,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_supported_operating_systems_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_supported_operating_systems_operations.py
index df7ca061826f..9bfdac729ad1 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_supported_operating_systems_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_supported_operating_systems_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Optional, TypeVar
from azure.core.exceptions import (
@@ -17,16 +17,18 @@
map_error,
)
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -35,8 +37,8 @@
def build_get_request(
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
*,
instance_type: Optional[str] = None,
@@ -45,7 +47,7 @@ def build_get_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", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -54,8 +56,8 @@ def build_get_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationSupportedOperatingSystems",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
}
@@ -99,12 +101,11 @@ def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _models.Sup
:param instance_type: The instance type. Default value is None.
:type instance_type: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: SupportedOperatingSystems or the result of cls(response)
:rtype: ~azure.mgmt.recoveryservicessiterecovery.models.SupportedOperatingSystems
:raises ~azure.core.exceptions.HttpResponseError:
"""
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -118,22 +119,20 @@ def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _models.Sup
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.SupportedOperatingSystems] = kwargs.pop("cls", None)
- request = build_get_request(
- resource_name=self._config.resource_name,
+ _request = build_get_request(
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
instance_type=instance_type,
api_version=api_version,
- template_url=self.get.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -142,13 +141,9 @@ def get(self, instance_type: Optional[str] = None, **kwargs: Any) -> _models.Sup
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, error_format=ARMErrorFormat)
- deserialized = self._deserialize("SupportedOperatingSystems", pipeline_response)
+ deserialized = self._deserialize("SupportedOperatingSystems", pipeline_response.http_response)
if cls:
- return cls(pipeline_response, deserialized, {})
+ return cls(pipeline_response, deserialized, {}) # type: ignore
- return deserialized
-
- get.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationSupportedOperatingSystems"
- }
+ return deserialized # type: ignore
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_target_compute_sizes_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_target_compute_sizes_operations.py
index 1fa485d27698..63238bbeedcf 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_target_compute_sizes_operations.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/azure/mgmt/recoveryservicessiterecovery/operations/_target_compute_sizes_operations.py
@@ -1,4 +1,3 @@
-# pylint: disable=too-many-lines
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6,6 +5,7 @@
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
+import sys
from typing import Any, Callable, Dict, Iterable, Optional, TypeVar
import urllib.parse
@@ -19,16 +19,18 @@
)
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
-from azure.core.pipeline.transport import HttpResponse
-from azure.core.rest import HttpRequest
+from azure.core.rest import HttpRequest, HttpResponse
from azure.core.tracing.decorator import distributed_trace
from azure.core.utils import case_insensitive_dict
from azure.mgmt.core.exceptions import ARMErrorFormat
from .. import models as _models
from .._serialization import Serializer
-from .._vendor import _convert_request
+if sys.version_info >= (3, 9):
+ from collections.abc import MutableMapping
+else:
+ from typing import MutableMapping # type: ignore
T = TypeVar("T")
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]
@@ -36,19 +38,19 @@
_SERIALIZER.client_side_validation = False
-def build_list_by_replication_protected_items_request(
+def build_list_by_replication_protected_items_request( # pylint: disable=name-too-long
fabric_name: str,
protection_container_name: str,
replicated_protected_item_name: str,
- resource_name: str,
resource_group_name: str,
+ resource_name: str,
subscription_id: str,
**kwargs: Any
) -> HttpRequest:
_headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
_params = case_insensitive_dict(kwargs.pop("params", {}) or {})
- api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-08-01"))
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-01-01"))
accept = _headers.pop("Accept", "application/json")
# Construct URL
@@ -57,8 +59,8 @@ def build_list_by_replication_protected_items_request(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes",
) # pylint: disable=line-too-long
path_format_arguments = {
- "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"),
+ "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"),
"subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"),
"fabricName": _SERIALIZER.url("fabric_name", fabric_name, "str"),
"protectionContainerName": _SERIALIZER.url("protection_container_name", protection_container_name, "str"),
@@ -111,7 +113,6 @@ def list_by_replication_protected_items(
:type protection_container_name: str
:param replicated_protected_item_name: Replication protected item name. Required.
:type replicated_protected_item_name: str
- :keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either TargetComputeSize or the result of cls(response)
:rtype:
~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicessiterecovery.models.TargetComputeSize]
@@ -123,7 +124,7 @@ def list_by_replication_protected_items(
api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version))
cls: ClsType[_models.TargetComputeSizeCollection] = kwargs.pop("cls", None)
- error_map = {
+ error_map: MutableMapping = {
401: ClientAuthenticationError,
404: ResourceNotFoundError,
409: ResourceExistsError,
@@ -134,20 +135,18 @@ def list_by_replication_protected_items(
def prepare_request(next_link=None):
if not next_link:
- request = build_list_by_replication_protected_items_request(
+ _request = build_list_by_replication_protected_items_request(
fabric_name=fabric_name,
protection_container_name=protection_container_name,
replicated_protected_item_name=replicated_protected_item_name,
- resource_name=self._config.resource_name,
resource_group_name=self._config.resource_group_name,
+ resource_name=self._config.resource_name,
subscription_id=self._config.subscription_id,
api_version=api_version,
- template_url=self.list_by_replication_protected_items.metadata["url"],
headers=_headers,
params=_params,
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
+ _request.url = self._client.format_url(_request.url)
else:
# make call to next link with the client's api-version
@@ -159,13 +158,12 @@ def prepare_request(next_link=None):
}
)
_next_request_params["api-version"] = self._config.api_version
- request = HttpRequest(
+ _request = HttpRequest(
"GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
)
- request = _convert_request(request)
- request.url = self._client.format_url(request.url)
- request.method = "GET"
- return request
+ _request.url = self._client.format_url(_request.url)
+ _request.method = "GET"
+ return _request
def extract_data(pipeline_response):
deserialized = self._deserialize("TargetComputeSizeCollection", pipeline_response)
@@ -175,11 +173,11 @@ def extract_data(pipeline_response):
return deserialized.next_link or None, iter(list_of_elem)
def get_next(next_link=None):
- request = prepare_request(next_link)
+ _request = prepare_request(next_link)
_stream = False
pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access
- request, stream=_stream, **kwargs
+ _request, stream=_stream, **kwargs
)
response = pipeline_response.http_response
@@ -190,7 +188,3 @@ def get_next(next_link=None):
return pipeline_response
return ItemPaged(get_next, extract_data)
-
- list_by_replication_protected_items.metadata = {
- "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/targetComputeSizes"
- }
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_point_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_point_get.py
new file mode 100644
index 000000000000..4f4133365f02
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_point_get.py
@@ -0,0 +1,47 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python cluster_recovery_point_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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.cluster_recovery_point.get(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ recovery_point_name="06b9ae7f-f21d-4a76-9897-5cf5d6004d80",
+ )
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ClusterRecoveryPoint_Get.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_points_list_by_replication_protection_cluster.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_points_list_by_replication_protection_cluster.py
new file mode 100644
index 000000000000..1e57c551148a
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/cluster_recovery_points_list_by_replication_protection_cluster.py
@@ -0,0 +1,47 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python cluster_recovery_points_list_by_replication_protection_cluster.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.cluster_recovery_points.list_by_replication_protection_cluster(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ )
+ for item in response:
+ print(item)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ClusterRecoveryPoints_ListByReplicationProtectionCluster.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_get.py
index 05d22adc4fde..7502d446384d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/MigrationRecoveryPoints_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/MigrationRecoveryPoints_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_list_by_replication_migration_items.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_list_by_replication_migration_items.py
index 5755c9d90751..94ad52e3a7fe 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_list_by_replication_migration_items.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/migration_recovery_points_list_by_replication_migration_items.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/MigrationRecoveryPoints_ListByReplicationMigrationItems.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/operations_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/operations_list.py
index 103de62e6f70..d7466d2805ef 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/operations_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/operations_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/Operations_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/Operations_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_get.py
index f6239bd95add..039a817ba697 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/RecoveryPoints_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/RecoveryPoints_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_list_by_replication_protected_items.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_list_by_replication_protected_items.py
index 7bfa5e0abdb4..807df1e052dc 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_list_by_replication_protected_items.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/recovery_points_list_by_replication_protected_items.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/RecoveryPoints_ListByReplicationProtectedItems.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/RecoveryPoints_ListByReplicationProtectedItems.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_create.py
index ea9990ceb6c8..46b34f607115 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationAlertSettings_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationAlertSettings_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_get.py
index 5d7ebd3559c2..210164f5c16d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationAlertSettings_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationAlertSettings_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_list.py
index 66980e368a97..69a076fe0e1e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_alert_settings_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationAlertSettings_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationAlertSettings_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_appliances_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_appliances_list.py
index 856eacda128b..2d9007627ba1 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_appliances_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_appliances_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationAppliances_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationAppliances_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_get.py
index 05b6a8db0de0..f86b365785d6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationEligibilityResults_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationEligibilityResults_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_list.py
index fd1f04e64000..86e0cd326569 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_eligibility_results_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationEligibilityResults_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationEligibilityResults_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_get.py
index 938e23504f01..6093d8149a2d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationEvents_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationEvents_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_list.py
index 9496a3bb6577..75d30a4ec441 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_events_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationEvents_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationEvents_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_check_consistency.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_check_consistency.py
index 63afc7b4c7f3..ab69391dabe6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_check_consistency.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_check_consistency.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_CheckConsistency.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_CheckConsistency.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_create.py
index 9c5ea9a08716..652b48af4790 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_delete.py
index 925ea4e7802d..82bb54696e2e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_get.py
index f5f73f698586..79099d97d3fe 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_list.py
index 8021c60ec74a..6a8c5733d58f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_migrate_to_aad.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_migrate_to_aad.py
index 97d078499575..e00595c7b191 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_migrate_to_aad.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_migrate_to_aad.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_MigrateToAad.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_MigrateToAad.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_purge.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_purge.py
index 52c95baf663a..c02f11a15aab 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_purge.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_purge.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_Purge.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_Purge.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_reassociate_gateway.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_reassociate_gateway.py
index db9f0db0ab3f..119aa2c7a61a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_reassociate_gateway.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_reassociate_gateway.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_ReassociateGateway.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_ReassociateGateway.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_renew_certificate.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_renew_certificate.py
index 030dc611292b..8e8be575c147 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_renew_certificate.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_fabrics_renew_certificate.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationFabrics_RenewCertificate.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationFabrics_RenewCertificate.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_infrastructure_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_infrastructure_delete.py
index 7ecb56c7a722..d43838f0a264 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_infrastructure_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_infrastructure_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationInfrastructure_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationInfrastructure_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_cancel.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_cancel.py
index d67749339d51..1f4ced177761 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_cancel.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_cancel.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_Cancel.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_Cancel.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_export.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_export.py
index 501f87c47c72..1fc84c20d89c 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_export.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_export.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -42,6 +43,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_Export.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_Export.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_get.py
index 7ecff129f278..ef76c4d72075 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_list.py
index 0e4e82c2286d..e201c7f94192 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_restart.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_restart.py
index 47d938394517..9e5172e4c99b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_restart.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_restart.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_Restart.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_Restart.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_resume.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_resume.py
index 6e33a66be140..74b1f098cd91 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_resume.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_jobs_resume.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationJobs_Resume.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationJobs_Resume.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_get.py
index 26d86e6e6fe7..58c16f0a52b6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationLogicalNetworks_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationLogicalNetworks_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_list_by_replication_fabrics.py
index bcd5c75b12c4..eaf032197ebe 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_logical_networks_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_create.py
index 78fb77567117..018673663b4c 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -43,9 +44,12 @@ def main():
"disksToInclude": [
{
"diskId": "disk1",
+ "diskSizeInGB": 60,
+ "iops": 3000,
"isOSDisk": "true",
"logStorageAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Storage/storageAccounts/logStorageAccount1",
"logStorageAccountSasSecretName": "logStorageSas",
+ "throughputInMbps": 5000,
}
],
"instanceType": "VMwareCbt",
@@ -60,6 +64,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_delete.py
index 2f715a5ba0f0..28c67128abb4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_get.py
index d3af32c4ea37..c728c0a479be 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list.py
index c24226b6d0c4..b947b18108b3 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list_by_replication_protection_containers.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list_by_replication_protection_containers.py
index aca39b316e71..cc286000da3f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list_by_replication_protection_containers.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_list_by_replication_protection_containers.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_migrate.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_migrate.py
index a769156d86d7..b641c81d1784 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_migrate.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_migrate.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -42,6 +43,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Migrate.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Migrate.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_pause_replication.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_pause_replication.py
index 80243b14d7bf..89b60850f245 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_pause_replication.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_pause_replication.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_PauseReplication.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_PauseReplication.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resume_replication.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resume_replication.py
index 2d6617516f41..e4b4cfb6fe9a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resume_replication.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resume_replication.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -44,6 +45,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_ResumeReplication.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_ResumeReplication.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resync.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resync.py
index 5555d03a0b9b..53cdd18bcf04 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resync.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_resync.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Resync.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Resync.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate.py
index b42df437dd98..b174a4437a52 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,7 @@ def main():
"providerSpecificDetails": {
"instanceType": "VMwareCbt",
"networkId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1",
+ "osUpgradeVersion": "Microsoft Windows Server 2019 (64-bit)",
"recoveryPointId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationFabrics/vmwarefabric1/replicationProtectionContainers/vmwareContainer1/replicationMigrationItems/virtualmachine1/migrationRecoveryPoints/9e737191-317e-43d0-8c83-e32ac3b34686",
}
}
@@ -48,6 +50,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_TestMigrate.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_TestMigrate.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate_cleanup.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate_cleanup.py
index ee8ab3bc35f2..352d67e7ff8b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate_cleanup.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_test_migrate_cleanup.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_TestMigrateCleanup.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_TestMigrateCleanup.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_update.py
index 8258cfb845c5..3241b91e8012 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_migration_items_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationMigrationItems_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationMigrationItems_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_create.py
index e5c8c9e7cdcd..ea6f420d1694 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_delete.py
index 2cb897b52ac7..5325217dae11 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_get.py
index 5eac684a0968..95db5670c090 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list.py
index c0c677f1cbe1..5048fe491764 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list_by_replication_networks.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list_by_replication_networks.py
index 61179c79ecb8..18b39bc9e7d0 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list_by_replication_networks.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_list_by_replication_networks.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_ListByReplicationNetworks.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_update.py
index d12faba60a51..7ca8cbf265ec 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_network_mappings_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworkMappings_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworkMappings_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_get.py
index bc73a4e33be1..f3ab008a33b3 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworks_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworks_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list.py
index 12ca9f09d042..3e11cde28f57 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworks_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworks_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list_by_replication_fabrics.py
index 68407aa1dcae..c7691f5192e1 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_networks_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationNetworks_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationNetworks_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_create.py
index 52a8ba781069..520ad3b8871f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationPolicies_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationPolicies_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_delete.py
index 071ad9c7d9d3..98a65ed86c30 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationPolicies_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationPolicies_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_get.py
index 72b638b23d2f..8ecbcdccafa5 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationPolicies_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationPolicies_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_list.py
index 2178f178fe96..563a56af7d38 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationPolicies_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationPolicies_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_update.py
index cf097e8d708a..7500ed6a340a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_policies_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationPolicies_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationPolicies_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_get.py
index 34a44efa1b9d..090c2d68d73a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectableItems_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectableItems_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_list_by_replication_protection_containers.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_list_by_replication_protection_containers.py
index 866663cdefb6..701cf4becee2 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_list_by_replication_protection_containers.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protectable_items_list_by_replication_protection_containers.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_add_disks.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_add_disks.py
index 413d9feb80fc..69ddade37617 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_add_disks.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_add_disks.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -53,6 +54,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_AddDisks.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_AddDisks.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_apply_recovery_point.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_apply_recovery_point.py
index 770efd71b4c4..041c0c6dd98e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_apply_recovery_point.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_apply_recovery_point.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -45,6 +46,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_ApplyRecoveryPoint.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_create.py
index e949960286b6..20eaa06a5134 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_delete.py
index 7dd4ab74e5c0..034b20b0bf0d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -41,6 +42,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_cancel.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_cancel.py
index 74e4eb30d6c9..f7c6a80be125 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_cancel.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_cancel.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_FailoverCancel.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_FailoverCancel.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_commit.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_commit.py
index 6d3a4c52b467..c00d43234155 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_commit.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_failover_commit.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_FailoverCommit.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_FailoverCommit.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_get.py
index cf8e3003bfb9..55d31f7c02e6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list.py
index b2c66c2a0282..de0f9579fd24 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list_by_replication_protection_containers.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list_by_replication_protection_containers.py
index 64f34aa80f2b..6deda1b2422a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list_by_replication_protection_containers.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_list_by_replication_protection_containers.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_planned_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_planned_failover.py
index 33615cf223b8..0ac335ac135f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_planned_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_planned_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -45,6 +46,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_PlannedFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_PlannedFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_purge.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_purge.py
index 63072b3447a1..b1daedadba46 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_purge.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_purge.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Purge.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Purge.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_remove_disks.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_remove_disks.py
index fa141310ad7b..8f9d261dc687 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_remove_disks.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_remove_disks.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -47,6 +48,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_RemoveDisks.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_RemoveDisks.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_repair_replication.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_repair_replication.py
index 8b4d78efc516..75af2dbf43a4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_repair_replication.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_repair_replication.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_RepairReplication.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_RepairReplication.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_reprotect.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_reprotect.py
index 58f1946145d1..51f8abac8d72 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_reprotect.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_reprotect.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -45,6 +46,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Reprotect.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Reprotect.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_resolve_health_errors.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_resolve_health_errors.py
index e134c91fa9d1..5c6180b26116 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_resolve_health_errors.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_resolve_health_errors.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_ResolveHealthErrors.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_ResolveHealthErrors.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_switch_provider.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_switch_provider.py
index 0df298ae7639..84dff38302fe 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_switch_provider.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_switch_provider.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -50,6 +51,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_SwitchProvider.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_SwitchProvider.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover.py
index 31aba82e80e4..9cb6557cc156 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -47,6 +48,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_TestFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_TestFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover_cleanup.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover_cleanup.py
index ca02519b8569..75fcb448aa0e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover_cleanup.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_test_failover_cleanup.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_TestFailoverCleanup.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_TestFailoverCleanup.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_unplanned_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_unplanned_failover.py
index 24df21699f0c..f5b65f8cdb0a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_unplanned_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_unplanned_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_UnplannedFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_UnplannedFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update.py
index 4a018b530a4c..cab03e3ec33c 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -62,6 +63,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_appliance.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_appliance.py
index 9e8675544ab3..6cbd55869a6a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_appliance.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_appliance.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -45,6 +46,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_UpdateAppliance.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_UpdateAppliance.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_mobility_service.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_mobility_service.py
index eb28593fba3d..c38e2e5d7442 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_mobility_service.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protected_items_update_mobility_service.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectedItems_UpdateMobilityService.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectedItems_UpdateMobilityService.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_apply_recovery_point.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_apply_recovery_point.py
new file mode 100644
index 000000000000..2a6b0d679a45
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_apply_recovery_point.py
@@ -0,0 +1,55 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_apply_recovery_point.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_apply_recovery_point(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ apply_cluster_recovery_point_input={
+ "properties": {
+ "clusterRecoveryPointId": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/shashankvaultpvt/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62",
+ "individualNodeRecoveryPoints": [
+ "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/shashankvaultpvt/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d"
+ ],
+ "providerSpecificDetails": {"instanceType": "A2A"},
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_ApplyRecoveryPoint.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_create.py
new file mode 100644
index 000000000000..4308e7c095d7
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_create.py
@@ -0,0 +1,52 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_create.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_create(
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ replication_protection_cluster_name="cluster12",
+ replication_protection_cluster={
+ "properties": {
+ "policyId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy",
+ "providerSpecificDetails": {"instanceType": "A2A"},
+ "recoveryContainerId": "/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container",
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Create.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_failover_commit.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_failover_commit.py
new file mode 100644
index 000000000000..f25f1a065350
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_failover_commit.py
@@ -0,0 +1,46 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_failover_commit.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_failover_commit(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_FailoverCommit.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get.py
new file mode 100644
index 000000000000..213fc0363329
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get.py
@@ -0,0 +1,46 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.get(
+ resource_name="vault1",
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ replication_protection_cluster_name="cluster1",
+ )
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Get.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get_operation_results.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get_operation_results.py
new file mode 100644
index 000000000000..11055043f060
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_get_operation_results.py
@@ -0,0 +1,47 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_get_operation_results.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.get_operation_results(
+ resource_name="vault1",
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ replication_protection_cluster_name="cluster1",
+ job_id="ea63a935-59d5-4b12-aff2-98773f63c116",
+ )
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_GetOperationResults.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list.py
new file mode 100644
index 000000000000..c30e0741c623
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list.py
@@ -0,0 +1,44 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.list(
+ resource_name="vault1",
+ )
+ for item in response:
+ print(item)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_List.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list_by_replication_protection_containers.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list_by_replication_protection_containers.py
new file mode 100644
index 000000000000..7c41067162c2
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_list_by_replication_protection_containers.py
@@ -0,0 +1,46 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_list_by_replication_protection_containers.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.list_by_replication_protection_containers(
+ resource_name="vault1",
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ )
+ for item in response:
+ print(item)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_ListByReplicationProtectionContainers.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_purge.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_purge.py
new file mode 100644
index 000000000000..6c12a9a34d5f
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_purge.py
@@ -0,0 +1,44 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_purge.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ client.replication_protection_clusters.begin_purge(
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ replication_protection_cluster_name="cluster1",
+ ).result()
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Purge.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_repair_replication.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_repair_replication.py
new file mode 100644
index 000000000000..c09f79a3b752
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_repair_replication.py
@@ -0,0 +1,46 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_repair_replication.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="c183865e-6077-46f2-a3b1-deb0f4f4650a",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_repair_replication(
+ resource_name="vault1",
+ fabric_name="eastus",
+ protection_container_name="eastus-container",
+ replication_protection_cluster_name="cluster12",
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_RepairReplication.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover.py
new file mode 100644
index 000000000000..16356b92bcb8
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover.py
@@ -0,0 +1,60 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_test_failover.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_test_failover(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ failover_input={
+ "properties": {
+ "failoverDirection": "PrimaryToRecovery",
+ "networkId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Network/virtualNetworks/adVNET-asr",
+ "networkType": "VmNetworkAsInput",
+ "providerSpecificDetails": {
+ "clusterRecoveryPointId": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62",
+ "individualNodeRecoveryPoints": [
+ "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d"
+ ],
+ "instanceType": "A2A",
+ },
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_TestFailover.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover_cleanup.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover_cleanup.py
new file mode 100644
index 000000000000..bfd65db9036b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_test_failover_cleanup.py
@@ -0,0 +1,47 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_test_failover_cleanup.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_test_failover_cleanup(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ cleanup_input={"properties": {"comments": "Test Failover Cleanup"}},
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_TestFailoverCleanup.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_unplanned_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_unplanned_failover.py
new file mode 100644
index 000000000000..2dd5460d412c
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_clusters_unplanned_failover.py
@@ -0,0 +1,59 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_clusters_unplanned_failover.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_clusters.begin_unplanned_failover(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ replication_protection_cluster_name="testcluster",
+ failover_input={
+ "properties": {
+ "failoverDirection": "primarytorecovery",
+ "providerSpecificDetails": {
+ "clusterRecoveryPointId": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62",
+ "individualNodeRecoveryPoints": [
+ "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d"
+ ],
+ "instanceType": "A2A",
+ },
+ "sourceSiteOperations": "NotRequired",
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_UnplannedFailover.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_create.py
index d0f8c494dacd..2e7f95c46932 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -46,6 +47,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_delete.py
index bb4a12bdf0af..4cbe6cb60b0f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_get.py
index b9ed1ea9dc52..e194655585c5 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list.py
index caddc6e958e9..1036b7541503 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list_by_replication_protection_containers.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list_by_replication_protection_containers.py
index 7353201e8463..e37790b89671 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list_by_replication_protection_containers.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_list_by_replication_protection_containers.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_purge.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_purge.py
index 6ff25c40bd48..667f3636ca78 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_purge.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_purge.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_Purge.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_Purge.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_update.py
index 29b4d7189035..269fa2db354b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_container_mappings_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -48,6 +49,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainerMappings_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainerMappings_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_create.py
index 47e8cd29faaf..e8fb653903af 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -43,6 +44,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_delete.py
index 3411b4fa48d8..43812572f870 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_discover_protectable_item.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_discover_protectable_item.py
index d1b301511b39..22e314238e4e 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_discover_protectable_item.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_discover_protectable_item.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -41,6 +42,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_DiscoverProtectableItem.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_get.py
index a897a0f94202..49e247b13268 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list.py
index 45df3f7b3915..0bc8e798d9c5 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list_by_replication_fabrics.py
index 008b40b6918e..1df0e01d9fcc 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_cluster_protection.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_cluster_protection.py
new file mode 100644
index 000000000000..cd4290a88725
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_cluster_protection.py
@@ -0,0 +1,79 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replication_protection_containers_switch_cluster_protection.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="resourceGroupPS1",
+ resource_name="vault1",
+ )
+
+ response = client.replication_protection_containers.begin_switch_cluster_protection(
+ resource_name="vault1",
+ fabric_name="fabric-pri-eastus",
+ protection_container_name="pri-cloud-eastus",
+ switch_input={
+ "properties": {
+ "providerSpecificDetails": {
+ "instanceType": "A2A",
+ "policyId": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan",
+ "protectedItemsDetail": [
+ {
+ "recoveryResourceGroupId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr",
+ "replicationProtectedItemName": "yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio",
+ "vmManagedDisks": [
+ {
+ "diskId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql0-osdisk",
+ "primaryStagingAzureStorageAccountId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/clustertestrg-19-01/providers/Microsoft.Storage/storageAccounts/ix701lvaasrcache",
+ "recoveryResourceGroupId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr",
+ }
+ ],
+ },
+ {
+ "recoveryResourceGroupId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr",
+ "replicationProtectedItemName": "kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4",
+ "vmManagedDisks": [
+ {
+ "diskId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql1-osdisk",
+ "primaryStagingAzureStorageAccountId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/clustertestrg-19-01/providers/Microsoft.Storage/storageAccounts/ix701lvaasrcache",
+ "recoveryResourceGroupId": "/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr",
+ }
+ ],
+ },
+ ],
+ "recoveryContainerId": "/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus",
+ },
+ "replicationProtectionClusterName": "testcluster",
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_SwitchClusterProtection.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_protection.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_protection.py
index 6f13f74bfcda..929fd8dda1f8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_protection.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_containers_switch_protection.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -44,6 +45,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionContainers_SwitchProtection.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionContainers_SwitchProtection.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_create.py
index 611d7dcfc270..9f512fbc636a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -50,6 +51,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionIntents_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionIntents_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_get.py
index 9ed910dbb243..954f8dbd1a14 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionIntents_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionIntents_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_list.py
index db147d817c60..e17727dc6652 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_protection_intents_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationProtectionIntents_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionIntents_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_create.py
index 8be0cbe34799..653d03a0887a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -57,6 +58,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_delete.py
index c6b03ff30006..afd1d70afc57 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_cancel.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_cancel.py
index 0b4c629a82a5..91c1e057eca6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_cancel.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_cancel.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_FailoverCancel.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_FailoverCancel.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_commit.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_commit.py
index 583cd639b7a0..b6ae850ee2ee 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_commit.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_failover_commit.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_FailoverCommit.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_FailoverCommit.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_get.py
index 1b418a6bf187..aef66e5a594f 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_list.py
index d21424f3945e..49bdce4d7de3 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_planned_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_planned_failover.py
index d16eb90fc687..e1e76bda3e65 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_planned_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_planned_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -43,6 +44,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_PlannedFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_PlannedFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_reprotect.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_reprotect.py
index 36d99f572363..eac04a6ac6d4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_reprotect.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_reprotect.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_Reprotect.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_Reprotect.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover.py
index bb8c3186d781..6a0a4639b8cd 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -45,6 +46,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_TestFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_TestFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover_cleanup.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover_cleanup.py
index 1621ec3167bb..470039950c94 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover_cleanup.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_test_failover_cleanup.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_TestFailoverCleanup.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_unplanned_failover.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_unplanned_failover.py
index 721ea7e78362..6cac1123f86a 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_unplanned_failover.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_unplanned_failover.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -44,6 +45,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_UnplannedFailover.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_UnplannedFailover.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_update.py
index dd977a90faee..a5eecb7dffa0 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_update.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_plans_update.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -77,6 +78,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryPlans_Update.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryPlans_Update.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_create.py
index b9b2e4b293c6..d3bdaabbd679 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -57,6 +58,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_delete.py
index 3a523efb3985..95d20b7497f6 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_get.py
index 44c32075367f..d67a0fc33d8d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list.py
index 63ed54d4dc71..3180905f8c6d 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list_by_replication_fabrics.py
index 667a78beffa6..f00480c32664 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_purge.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_purge.py
index 580f6f2ab9e0..5081b8515fb2 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_purge.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_purge.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_Purge.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_Purge.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_refresh_provider.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_refresh_provider.py
index 765f0968175e..84d890a50fa8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_refresh_provider.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_recovery_services_providers_refresh_provider.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationRecoveryServicesProviders_RefreshProvider.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_create.py
index 2bc2f6a4e00b..3f2cfeec0e88 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -44,6 +45,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassificationMappings_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassificationMappings_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_delete.py
index b710aeb23c39..dc2d8e2807a4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassificationMappings_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassificationMappings_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_get.py
index 27a6397d991f..119005b26cca 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassificationMappings_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassificationMappings_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list.py
index 82f2e490c4d9..b08a3d23aa28 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassificationMappings_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassificationMappings_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list_by_replication_storage_classifications.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list_by_replication_storage_classifications.py
index b1652eab7a09..441618dff481 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list_by_replication_storage_classifications.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classification_mappings_list_by_replication_storage_classifications.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -39,6 +40,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_get.py
index 9cf0e0b4d9a0..2578ee2fb3af 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassifications_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassifications_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list.py
index eb7e8f2f42fd..8e9a227eb4b8 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassifications_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassifications_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list_by_replication_fabrics.py
index a124b21f3da2..303fd0186452 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_storage_classifications_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationStorageClassifications_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_get.py
index f7241c9c0226..05af66413cf4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -35,6 +36,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationVaultHealth_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationVaultHealth_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_refresh.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_refresh.py
index 689741e95f5a..7ac9c773c015 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_refresh.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_health_refresh.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -35,6 +36,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationVaultHealth_Refresh.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationVaultHealth_Refresh.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_create.py
index 880b602f8fcd..6d39d3a4e0c2 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_create.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_create.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -42,6 +43,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationVaultSetting_Create.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationVaultSetting_Create.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_get.py
index 27ca81a5a4b5..8d781b7e1d36 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationVaultSetting_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationVaultSetting_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_list.py
index dd760d3659b5..f4ca049499eb 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replication_vault_setting_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationVaultSetting_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationVaultSetting_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_create.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_create.py
new file mode 100644
index 000000000000..655c34de7f45
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_create.py
@@ -0,0 +1,53 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replicationv_centers_create.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="MadhaviVRG",
+ resource_name="MadhaviVault",
+ )
+
+ response = client.replicationv_centers.begin_create(
+ fabric_name="MadhaviFabric",
+ vcenter_name="esx-78",
+ add_v_center_request={
+ "properties": {
+ "friendlyName": "esx-78",
+ "ipAddress": "inmtest78",
+ "port": "443",
+ "processServerId": "5A720CAB-39CB-F445-BD1662B0B33164B5",
+ "runAsAccountId": "2",
+ }
+ },
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_Create.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_delete.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_delete.py
index a9b08e5747d4..0b7a8eef2c63 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_delete.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_delete.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -37,6 +38,6 @@ def main():
).result()
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationvCenters_Delete.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_Delete.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_get.py
index 005b1ecd77ee..7ad02cb12846 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationvCenters_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list.py
index 87deb98ac206..266ce31d4e45 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -36,6 +37,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationvCenters_List.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_List.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list_by_replication_fabrics.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list_by_replication_fabrics.py
index b1930ae18f6d..299cc9058b7c 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list_by_replication_fabrics.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_list_by_replication_fabrics.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -38,6 +39,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/ReplicationvCenters_ListByReplicationFabrics.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_ListByReplicationFabrics.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_update.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_update.py
new file mode 100644
index 000000000000..bbaf3adc0a5b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/replicationv_centers_update.py
@@ -0,0 +1,45 @@
+# 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.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+"""
+# PREREQUISITES
+ pip install azure-identity
+ pip install azure-mgmt-recoveryservicessiterecovery
+# USAGE
+ python replicationv_centers_update.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 = SiteRecoveryManagementClient(
+ credential=DefaultAzureCredential(),
+ subscription_id="7c943c1b-5122-4097-90c8-861411bdd574",
+ resource_group_name="MadhaviVRG",
+ resource_name="MadhaviVault",
+ )
+
+ response = client.replicationv_centers.begin_update(
+ fabric_name="MadhaviFabric",
+ vcenter_name="esx-78",
+ update_v_center_request={"properties": {"ipAddress": "10.150.109.25"}},
+ ).result()
+ print(response)
+
+
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationvCenters_Update.json
+if __name__ == "__main__":
+ main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/supported_operating_systems_get.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/supported_operating_systems_get.py
index a4c0e7c51742..ebe997a4eba4 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/supported_operating_systems_get.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/supported_operating_systems_get.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -35,6 +36,6 @@ def main():
print(response)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/SupportedOperatingSystems_Get.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/SupportedOperatingSystems_Get.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/target_compute_sizes_list_by_replication_protected_items.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/target_compute_sizes_list_by_replication_protected_items.py
index a40c60bdb023..8b99b38d894b 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/target_compute_sizes_list_by_replication_protected_items.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_samples/target_compute_sizes_list_by_replication_protected_items.py
@@ -7,6 +7,7 @@
# --------------------------------------------------------------------------
from azure.identity import DefaultAzureCredential
+
from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
"""
@@ -40,6 +41,6 @@ def main():
print(item)
-# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2023-08-01/examples/TargetComputeSizes_ListByReplicationProtectedItems.json
+# x-ms-original-file: specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/TargetComputeSizes_ListByReplicationProtectedItems.json
if __name__ == "__main__":
main()
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/conftest.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/conftest.py
new file mode 100644
index 000000000000..0b42791e7e20
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/conftest.py
@@ -0,0 +1,41 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import os
+import pytest
+from dotenv import load_dotenv
+from devtools_testutils import (
+ test_proxy,
+ add_general_regex_sanitizer,
+ add_body_key_sanitizer,
+ add_header_regex_sanitizer,
+)
+
+load_dotenv()
+
+
+# For security, please avoid record sensitive identity information in recordings
+@pytest.fixture(scope="session", autouse=True)
+def add_sanitizers(test_proxy):
+ siterecoverymanagement_subscription_id = os.environ.get(
+ "AZURE_SUBSCRIPTION_ID", "00000000-0000-0000-0000-000000000000"
+ )
+ siterecoverymanagement_tenant_id = os.environ.get("AZURE_TENANT_ID", "00000000-0000-0000-0000-000000000000")
+ siterecoverymanagement_client_id = os.environ.get("AZURE_CLIENT_ID", "00000000-0000-0000-0000-000000000000")
+ siterecoverymanagement_client_secret = os.environ.get("AZURE_CLIENT_SECRET", "00000000-0000-0000-0000-000000000000")
+ add_general_regex_sanitizer(
+ regex=siterecoverymanagement_subscription_id, value="00000000-0000-0000-0000-000000000000"
+ )
+ add_general_regex_sanitizer(regex=siterecoverymanagement_tenant_id, value="00000000-0000-0000-0000-000000000000")
+ add_general_regex_sanitizer(regex=siterecoverymanagement_client_id, value="00000000-0000-0000-0000-000000000000")
+ add_general_regex_sanitizer(
+ regex=siterecoverymanagement_client_secret, value="00000000-0000-0000-0000-000000000000"
+ )
+
+ add_header_regex_sanitizer(key="Set-Cookie", value="[set-cookie;]")
+ add_header_regex_sanitizer(key="Cookie", value="cookie;")
+ add_body_key_sanitizer(json_path="$..access_token", value="access_token")
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations.py
new file mode 100644
index 000000000000..cdfd42b6509d
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations.py
@@ -0,0 +1,34 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementClusterRecoveryPointOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_cluster_recovery_point_get(self, resource_group):
+ response = self.client.cluster_recovery_point.get(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations_async.py
new file mode 100644
index 000000000000..4f43715ed4a8
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_point_operations_async.py
@@ -0,0 +1,35 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementClusterRecoveryPointOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_cluster_recovery_point_get(self, resource_group):
+ response = await self.client.cluster_recovery_point.get(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations.py
new file mode 100644
index 000000000000..136f7aed2bd2
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations.py
@@ -0,0 +1,33 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementClusterRecoveryPointsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_cluster_recovery_points_list_by_replication_protection_cluster(self, resource_group):
+ response = self.client.cluster_recovery_points.list_by_replication_protection_cluster(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations_async.py
new file mode 100644
index 000000000000..327ee38464d0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_cluster_recovery_points_operations_async.py
@@ -0,0 +1,34 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementClusterRecoveryPointsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_cluster_recovery_points_list_by_replication_protection_cluster(self, resource_group):
+ response = self.client.cluster_recovery_points.list_by_replication_protection_cluster(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations.py
new file mode 100644
index 000000000000..b4b2fabed64d
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations.py
@@ -0,0 +1,46 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementMigrationRecoveryPointsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_migration_recovery_points_list_by_replication_migration_items(self, resource_group):
+ response = self.client.migration_recovery_points.list_by_replication_migration_items(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_migration_recovery_points_get(self, resource_group):
+ response = self.client.migration_recovery_points.get(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ migration_recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations_async.py
new file mode 100644
index 000000000000..2ece24c2200a
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_migration_recovery_points_operations_async.py
@@ -0,0 +1,47 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementMigrationRecoveryPointsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_migration_recovery_points_list_by_replication_migration_items(self, resource_group):
+ response = self.client.migration_recovery_points.list_by_replication_migration_items(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ )
+ 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_migration_recovery_points_get(self, resource_group):
+ response = await self.client.migration_recovery_points.get(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ migration_recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations.py
new file mode 100644
index 000000000000..096baab9a62e
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations.py
@@ -0,0 +1,29 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_operations_list(self, resource_group):
+ response = self.client.operations.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations_async.py
new file mode 100644
index 000000000000..89d1d39f542b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_operations_async.py
@@ -0,0 +1,30 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_operations_list(self, resource_group):
+ response = self.client.operations.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations.py
new file mode 100644
index 000000000000..a0b63caf2d79
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations.py
@@ -0,0 +1,46 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementRecoveryPointsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_recovery_points_list_by_replication_protected_items(self, resource_group):
+ response = self.client.recovery_points.list_by_replication_protected_items(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_recovery_points_get(self, resource_group):
+ response = self.client.recovery_points.get(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations_async.py
new file mode 100644
index 000000000000..35e8479c7910
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_recovery_points_operations_async.py
@@ -0,0 +1,47 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementRecoveryPointsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_recovery_points_list_by_replication_protected_items(self, resource_group):
+ response = self.client.recovery_points.list_by_replication_protected_items(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ 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_recovery_points_get(self, resource_group):
+ response = await self.client.recovery_points.get(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ recovery_point_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations.py
new file mode 100644
index 000000000000..f9771dfedbbe
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations.py
@@ -0,0 +1,52 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationAlertSettingsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_alert_settings_list(self, resource_group):
+ response = self.client.replication_alert_settings.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_alert_settings_get(self, resource_group):
+ response = self.client.replication_alert_settings.get(
+ alert_setting_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_alert_settings_create(self, resource_group):
+ response = self.client.replication_alert_settings.create(
+ alert_setting_name="str",
+ request={"properties": {"customEmailAddresses": ["str"], "locale": "str", "sendToOwners": "str"}},
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations_async.py
new file mode 100644
index 000000000000..1fc2d667bec0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_alert_settings_operations_async.py
@@ -0,0 +1,53 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationAlertSettingsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_alert_settings_list(self, resource_group):
+ response = self.client.replication_alert_settings.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_alert_settings_get(self, resource_group):
+ response = await self.client.replication_alert_settings.get(
+ alert_setting_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_alert_settings_create(self, resource_group):
+ response = await self.client.replication_alert_settings.create(
+ alert_setting_name="str",
+ request={"properties": {"customEmailAddresses": ["str"], "locale": "str", "sendToOwners": "str"}},
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations.py
new file mode 100644
index 000000000000..a9044254151a
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations.py
@@ -0,0 +1,29 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationAppliancesOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_appliances_list(self, resource_group):
+ response = self.client.replication_appliances.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations_async.py
new file mode 100644
index 000000000000..889f76bf44ae
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_appliances_operations_async.py
@@ -0,0 +1,30 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationAppliancesOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_appliances_list(self, resource_group):
+ response = self.client.replication_appliances.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations.py
new file mode 100644
index 000000000000..8a001c3c5e00
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations.py
@@ -0,0 +1,41 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationEligibilityResultsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_eligibility_results_list(self, resource_group):
+ response = self.client.replication_eligibility_results.list(
+ virtual_machine_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_eligibility_results_get(self, resource_group):
+ response = self.client.replication_eligibility_results.get(
+ virtual_machine_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations_async.py
new file mode 100644
index 000000000000..44051906bb37
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_eligibility_results_operations_async.py
@@ -0,0 +1,42 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationEligibilityResultsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_eligibility_results_list(self, resource_group):
+ response = await self.client.replication_eligibility_results.list(
+ virtual_machine_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_eligibility_results_get(self, resource_group):
+ response = await self.client.replication_eligibility_results.get(
+ virtual_machine_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations.py
new file mode 100644
index 000000000000..f0935962bade
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations.py
@@ -0,0 +1,40 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationEventsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_events_list(self, resource_group):
+ response = self.client.replication_events.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_events_get(self, resource_group):
+ response = self.client.replication_events.get(
+ event_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations_async.py
new file mode 100644
index 000000000000..2c2ff4d83903
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_events_operations_async.py
@@ -0,0 +1,41 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationEventsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_events_list(self, resource_group):
+ response = self.client.replication_events.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_events_get(self, resource_group):
+ response = await self.client.replication_events.get(
+ event_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations.py
new file mode 100644
index 000000000000..2dd60f1ec629
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations.py
@@ -0,0 +1,140 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationFabricsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_fabrics_list(self, resource_group):
+ response = self.client.replication_fabrics.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_fabrics_get(self, resource_group):
+ response = self.client.replication_fabrics.get(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_fabrics_begin_create(self, resource_group):
+ response = self.client.replication_fabrics.begin_create(
+ fabric_name="str",
+ input={"properties": {"customDetails": "fabric_specific_creation_input"}},
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_purge(self, resource_group):
+ response = self.client.replication_fabrics.begin_purge(
+ fabric_name="str",
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_check_consistency(self, resource_group):
+ response = self.client.replication_fabrics.begin_check_consistency(
+ fabric_name="str",
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_migrate_to_aad(self, resource_group):
+ response = self.client.replication_fabrics.begin_migrate_to_aad(
+ fabric_name="str",
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_reassociate_gateway(self, resource_group):
+ response = self.client.replication_fabrics.begin_reassociate_gateway(
+ fabric_name="str",
+ failover_process_server_request={
+ "properties": {
+ "containerName": "str",
+ "sourceProcessServerId": "str",
+ "targetProcessServerId": "str",
+ "updateType": "str",
+ "vmsToMigrate": ["str"],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_delete(self, resource_group):
+ response = self.client.replication_fabrics.begin_delete(
+ fabric_name="str",
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_renew_certificate(self, resource_group):
+ response = self.client.replication_fabrics.begin_renew_certificate(
+ fabric_name="str",
+ renew_certificate={"properties": {"renewCertificateType": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_fabrics_begin_remove_infra(self, resource_group):
+ response = self.client.replication_fabrics.begin_remove_infra(
+ resource_name="str",
+ fabric_name="str",
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations_async.py
new file mode 100644
index 000000000000..568bc920ed54
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_fabrics_operations_async.py
@@ -0,0 +1,157 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationFabricsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_fabrics_list(self, resource_group):
+ response = self.client.replication_fabrics.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_fabrics_get(self, resource_group):
+ response = await self.client.replication_fabrics.get(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_fabrics_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_create(
+ fabric_name="str",
+ input={"properties": {"customDetails": "fabric_specific_creation_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_purge(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_purge(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_check_consistency(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_check_consistency(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_migrate_to_aad(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_migrate_to_aad(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_reassociate_gateway(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_reassociate_gateway(
+ fabric_name="str",
+ failover_process_server_request={
+ "properties": {
+ "containerName": "str",
+ "sourceProcessServerId": "str",
+ "targetProcessServerId": "str",
+ "updateType": "str",
+ "vmsToMigrate": ["str"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_delete(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_renew_certificate(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_renew_certificate(
+ fabric_name="str",
+ renew_certificate={"properties": {"renewCertificateType": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_fabrics_begin_remove_infra(self, resource_group):
+ response = await (
+ await self.client.replication_fabrics.begin_remove_infra(
+ resource_name="str",
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations.py
new file mode 100644
index 000000000000..5ff3dd9044d0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations.py
@@ -0,0 +1,94 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationJobsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_jobs_list(self, resource_group):
+ response = self.client.replication_jobs.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_jobs_get(self, resource_group):
+ response = self.client.replication_jobs.get(
+ job_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_jobs_begin_cancel(self, resource_group):
+ response = self.client.replication_jobs.begin_cancel(
+ job_name="str",
+ api_version="2025-01-01",
+ ).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_replication_jobs_begin_restart(self, resource_group):
+ response = self.client.replication_jobs.begin_restart(
+ job_name="str",
+ api_version="2025-01-01",
+ ).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_replication_jobs_begin_resume(self, resource_group):
+ response = self.client.replication_jobs.begin_resume(
+ job_name="str",
+ resume_job_params={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_jobs_begin_export(self, resource_group):
+ response = self.client.replication_jobs.begin_export(
+ job_query_parameter={
+ "affectedObjectTypes": "str",
+ "endTime": "str",
+ "fabricId": "str",
+ "jobName": "str",
+ "jobOutputType": "str",
+ "jobStatus": "str",
+ "startTime": "str",
+ "timezoneOffset": 0.0,
+ },
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations_async.py
new file mode 100644
index 000000000000..17b3de2a65c4
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_jobs_operations_async.py
@@ -0,0 +1,103 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationJobsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_jobs_list(self, resource_group):
+ response = self.client.replication_jobs.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_jobs_get(self, resource_group):
+ response = await self.client.replication_jobs.get(
+ job_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_jobs_begin_cancel(self, resource_group):
+ response = await (
+ await self.client.replication_jobs.begin_cancel(
+ job_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_jobs_begin_restart(self, resource_group):
+ response = await (
+ await self.client.replication_jobs.begin_restart(
+ job_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_jobs_begin_resume(self, resource_group):
+ response = await (
+ await self.client.replication_jobs.begin_resume(
+ job_name="str",
+ resume_job_params={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_jobs_begin_export(self, resource_group):
+ response = await (
+ await self.client.replication_jobs.begin_export(
+ job_query_parameter={
+ "affectedObjectTypes": "str",
+ "endTime": "str",
+ "fabricId": "str",
+ "jobName": "str",
+ "jobOutputType": "str",
+ "jobStatus": "str",
+ "startTime": "str",
+ "timezoneOffset": 0.0,
+ },
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations.py
new file mode 100644
index 000000000000..39c9ae68dc70
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations.py
@@ -0,0 +1,42 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationLogicalNetworksOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_logical_networks_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_logical_networks.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_logical_networks_get(self, resource_group):
+ response = self.client.replication_logical_networks.get(
+ fabric_name="str",
+ logical_network_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations_async.py
new file mode 100644
index 000000000000..a37e568228fa
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_logical_networks_operations_async.py
@@ -0,0 +1,43 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationLogicalNetworksOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_logical_networks_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_logical_networks.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_logical_networks_get(self, resource_group):
+ response = await self.client.replication_logical_networks.get(
+ fabric_name="str",
+ logical_network_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations.py
new file mode 100644
index 000000000000..cbf743310831
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations.py
@@ -0,0 +1,183 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationMigrationItemsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_migration_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_migration_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_migration_items_get(self, resource_group):
+ response = self.client.replication_migration_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_migration_items_begin_create(self, resource_group):
+ response = self.client.replication_migration_items.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={
+ "properties": {"policyId": "str", "providerSpecificDetails": "enable_migration_provider_specific_input"}
+ },
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_delete(self, resource_group):
+ response = self.client.replication_migration_items.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_update(self, resource_group):
+ response = self.client.replication_migration_items.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={"properties": {"providerSpecificDetails": "update_migration_item_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_migrate(self, resource_group):
+ response = self.client.replication_migration_items.begin_migrate(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ migrate_input={"properties": {"providerSpecificDetails": "migrate_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_pause_replication(self, resource_group):
+ response = self.client.replication_migration_items.begin_pause_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ pause_replication_input={"properties": {"instanceType": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_resume_replication(self, resource_group):
+ response = self.client.replication_migration_items.begin_resume_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ resume_replication_input={
+ "properties": {"providerSpecificDetails": "resume_replication_provider_specific_input"}
+ },
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_resync(self, resource_group):
+ response = self.client.replication_migration_items.begin_resync(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={"properties": {"providerSpecificDetails": "resync_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_test_migrate(self, resource_group):
+ response = self.client.replication_migration_items.begin_test_migrate(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ test_migrate_input={"properties": {"providerSpecificDetails": "test_migrate_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_begin_test_migrate_cleanup(self, resource_group):
+ response = self.client.replication_migration_items.begin_test_migrate_cleanup(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ test_migrate_cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_migration_items_list(self, resource_group):
+ response = self.client.replication_migration_items.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations_async.py
new file mode 100644
index 000000000000..36f8d92f54a2
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_migration_items_operations_async.py
@@ -0,0 +1,205 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationMigrationItemsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_migration_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_migration_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_migration_items_get(self, resource_group):
+ response = await self.client.replication_migration_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_migration_items_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={
+ "properties": {
+ "policyId": "str",
+ "providerSpecificDetails": "enable_migration_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={"properties": {"providerSpecificDetails": "update_migration_item_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_migrate(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_migrate(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ migrate_input={"properties": {"providerSpecificDetails": "migrate_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_pause_replication(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_pause_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ pause_replication_input={"properties": {"instanceType": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_resume_replication(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_resume_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ resume_replication_input={
+ "properties": {"providerSpecificDetails": "resume_replication_provider_specific_input"}
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_resync(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_resync(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ input={"properties": {"providerSpecificDetails": "resync_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_test_migrate(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_test_migrate(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ test_migrate_input={"properties": {"providerSpecificDetails": "test_migrate_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_begin_test_migrate_cleanup(self, resource_group):
+ response = await (
+ await self.client.replication_migration_items.begin_test_migrate_cleanup(
+ fabric_name="str",
+ protection_container_name="str",
+ migration_item_name="str",
+ test_migrate_cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_migration_items_list(self, resource_group):
+ response = self.client.replication_migration_items.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations.py
new file mode 100644
index 000000000000..d427b18d1948
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations.py
@@ -0,0 +1,107 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationNetworkMappingsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_network_mappings_list_by_replication_networks(self, resource_group):
+ response = self.client.replication_network_mappings.list_by_replication_networks(
+ fabric_name="str",
+ network_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_network_mappings_get(self, resource_group):
+ response = self.client.replication_network_mappings.get(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_network_mappings_begin_create(self, resource_group):
+ response = self.client.replication_network_mappings.begin_create(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ input={
+ "properties": {
+ "recoveryNetworkId": "str",
+ "fabricSpecificDetails": "fabric_specific_create_network_mapping_input",
+ "recoveryFabricName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_network_mappings_begin_delete(self, resource_group):
+ response = self.client.replication_network_mappings.begin_delete(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ api_version="2025-01-01",
+ ).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_replication_network_mappings_begin_update(self, resource_group):
+ response = self.client.replication_network_mappings.begin_update(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ input={
+ "properties": {
+ "fabricSpecificDetails": "fabric_specific_update_network_mapping_input",
+ "recoveryFabricName": "str",
+ "recoveryNetworkId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_network_mappings_list(self, resource_group):
+ response = self.client.replication_network_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations_async.py
new file mode 100644
index 000000000000..2c9002c04499
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_network_mappings_operations_async.py
@@ -0,0 +1,114 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationNetworkMappingsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_network_mappings_list_by_replication_networks(self, resource_group):
+ response = self.client.replication_network_mappings.list_by_replication_networks(
+ fabric_name="str",
+ network_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_network_mappings_get(self, resource_group):
+ response = await self.client.replication_network_mappings.get(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_network_mappings_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_network_mappings.begin_create(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ input={
+ "properties": {
+ "recoveryNetworkId": "str",
+ "fabricSpecificDetails": "fabric_specific_create_network_mapping_input",
+ "recoveryFabricName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_network_mappings_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_network_mappings.begin_delete(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_network_mappings_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_network_mappings.begin_update(
+ fabric_name="str",
+ network_name="str",
+ network_mapping_name="str",
+ input={
+ "properties": {
+ "fabricSpecificDetails": "fabric_specific_update_network_mapping_input",
+ "recoveryFabricName": "str",
+ "recoveryNetworkId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_network_mappings_list(self, resource_group):
+ response = self.client.replication_network_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations.py
new file mode 100644
index 000000000000..4d4d068081f6
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations.py
@@ -0,0 +1,52 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationNetworksOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_networks_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_networks.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_networks_get(self, resource_group):
+ response = self.client.replication_networks.get(
+ fabric_name="str",
+ network_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_networks_list(self, resource_group):
+ response = self.client.replication_networks.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations_async.py
new file mode 100644
index 000000000000..62eec17b99d5
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_networks_operations_async.py
@@ -0,0 +1,53 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationNetworksOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_networks_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_networks.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_networks_get(self, resource_group):
+ response = await self.client.replication_networks.get(
+ fabric_name="str",
+ network_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_networks_list(self, resource_group):
+ response = self.client.replication_networks.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations.py
new file mode 100644
index 000000000000..df0612b5c4a0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations.py
@@ -0,0 +1,75 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationPoliciesOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_policies_list(self, resource_group):
+ response = self.client.replication_policies.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_policies_get(self, resource_group):
+ response = self.client.replication_policies.get(
+ policy_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_policies_begin_create(self, resource_group):
+ response = self.client.replication_policies.begin_create(
+ policy_name="str",
+ input={"properties": {"providerSpecificInput": "policy_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_policies_begin_delete(self, resource_group):
+ response = self.client.replication_policies.begin_delete(
+ policy_name="str",
+ api_version="2025-01-01",
+ ).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_replication_policies_begin_update(self, resource_group):
+ response = self.client.replication_policies.begin_update(
+ policy_name="str",
+ input={"properties": {"replicationProviderSettings": "policy_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations_async.py
new file mode 100644
index 000000000000..9a0028a178e0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_policies_operations_async.py
@@ -0,0 +1,82 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationPoliciesOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_policies_list(self, resource_group):
+ response = self.client.replication_policies.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_policies_get(self, resource_group):
+ response = await self.client.replication_policies.get(
+ policy_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_policies_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_policies.begin_create(
+ policy_name="str",
+ input={"properties": {"providerSpecificInput": "policy_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_policies_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_policies.begin_delete(
+ policy_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_policies_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_policies.begin_update(
+ policy_name="str",
+ input={"properties": {"replicationProviderSettings": "policy_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations.py
new file mode 100644
index 000000000000..53f69e44437d
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations.py
@@ -0,0 +1,44 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectableItemsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protectable_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protectable_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protectable_items_get(self, resource_group):
+ response = self.client.replication_protectable_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ protectable_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations_async.py
new file mode 100644
index 000000000000..15427566634e
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protectable_items_operations_async.py
@@ -0,0 +1,45 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectableItemsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protectable_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protectable_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_protectable_items_get(self, resource_group):
+ response = await self.client.replication_protectable_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ protectable_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations.py
new file mode 100644
index 000000000000..43ea1374aa72
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations.py
@@ -0,0 +1,406 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectedItemsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protected_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protected_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protected_items_get(self, resource_group):
+ response = self.client.replication_protected_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protected_items_begin_create(self, resource_group):
+ response = self.client.replication_protected_items.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ input={
+ "properties": {
+ "policyId": "str",
+ "protectableItemId": "str",
+ "providerSpecificDetails": "enable_protection_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_purge(self, resource_group):
+ response = self.client.replication_protected_items.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_update(self, resource_group):
+ response = self.client.replication_protected_items.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ update_protection_input={
+ "properties": {
+ "enableRdpOnTargetOption": "str",
+ "licenseType": "str",
+ "providerSpecificDetails": "update_replication_protected_item_provider_input",
+ "recoveryAvailabilitySetId": "str",
+ "recoveryAzureVMName": "str",
+ "recoveryAzureVMSize": "str",
+ "selectedRecoveryAzureNetworkId": "str",
+ "selectedSourceNicId": "str",
+ "selectedTfoAzureNetworkId": "str",
+ "vmNics": [
+ {
+ "enableAcceleratedNetworkingOnRecovery": bool,
+ "enableAcceleratedNetworkingOnTfo": bool,
+ "ipConfigs": [
+ {
+ "ipConfigName": "str",
+ "isPrimary": bool,
+ "isSeletedForFailover": bool,
+ "recoveryLBBackendAddressPoolIds": ["str"],
+ "recoveryPublicIPAddressId": "str",
+ "recoveryStaticIPAddress": "str",
+ "recoverySubnetName": "str",
+ "tfoLBBackendAddressPoolIds": ["str"],
+ "tfoPublicIPAddressId": "str",
+ "tfoStaticIPAddress": "str",
+ "tfoSubnetName": "str",
+ }
+ ],
+ "nicId": "str",
+ "recoveryNetworkSecurityGroupId": "str",
+ "recoveryNicName": "str",
+ "recoveryNicResourceGroupName": "str",
+ "reuseExistingNic": bool,
+ "selectionType": "str",
+ "targetNicName": "str",
+ "tfoNetworkSecurityGroupId": "str",
+ "tfoNicName": "str",
+ "tfoNicResourceGroupName": "str",
+ "tfoReuseExistingNic": bool,
+ }
+ ],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_add_disks(self, resource_group):
+ response = self.client.replication_protected_items.begin_add_disks(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ add_disks_input={"properties": {"providerSpecificDetails": "add_disks_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_apply_recovery_point(self, resource_group):
+ response = self.client.replication_protected_items.begin_apply_recovery_point(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ apply_recovery_point_input={
+ "properties": {
+ "providerSpecificDetails": "apply_recovery_point_provider_specific_input",
+ "recoveryPointId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_failover_cancel(self, resource_group):
+ response = self.client.replication_protected_items.begin_failover_cancel(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_failover_commit(self, resource_group):
+ response = self.client.replication_protected_items.begin_failover_commit(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_planned_failover(self, resource_group):
+ response = self.client.replication_protected_items.begin_planned_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "planned_failover_provider_specific_failover_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_delete(self, resource_group):
+ response = self.client.replication_protected_items.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ disable_protection_input={
+ "properties": {
+ "disableProtectionReason": "str",
+ "replicationProviderInput": "disable_protection_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_remove_disks(self, resource_group):
+ response = self.client.replication_protected_items.begin_remove_disks(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ remove_disks_input={"properties": {"providerSpecificDetails": "remove_disks_provider_specific_input"}},
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_repair_replication(self, resource_group):
+ response = self.client.replication_protected_items.begin_repair_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_reprotect(self, resource_group):
+ response = self.client.replication_protected_items.begin_reprotect(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ reprotect_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "reverse_replication_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_resolve_health_errors(self, resource_group):
+ response = self.client.replication_protected_items.begin_resolve_health_errors(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ resolve_health_input={"properties": {"healthErrors": [{"healthErrorId": "str"}]}},
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_switch_provider(self, resource_group):
+ response = self.client.replication_protected_items.begin_switch_provider(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ switch_provider_input={
+ "properties": {"providerSpecificDetails": "switch_provider_specific_input", "targetInstanceType": "str"}
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_test_failover(self, resource_group):
+ response = self.client.replication_protected_items.begin_test_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ testfailover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkId": "str",
+ "networkType": "str",
+ "providerSpecificDetails": "test_failover_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_test_failover_cleanup(self, resource_group):
+ response = self.client.replication_protected_items.begin_test_failover_cleanup(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_unplanned_failover(self, resource_group):
+ response = self.client.replication_protected_items.begin_unplanned_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "unplanned_failover_provider_specific_input",
+ "sourceSiteOperations": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_update_appliance(self, resource_group):
+ response = self.client.replication_protected_items.begin_update_appliance(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ appliance_update_input={
+ "properties": {
+ "providerSpecificDetails": "update_appliance_for_replication_protected_item_provider_specific_input",
+ "targetApplianceId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protected_items_begin_update_mobility_service(self, resource_group):
+ response = self.client.replication_protected_items.begin_update_mobility_service(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ update_mobility_service_request={"properties": {"runAsAccountId": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_protected_items_list(self, resource_group):
+ response = self.client.replication_protected_items.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations_async.py
new file mode 100644
index 000000000000..48f460eed27b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protected_items_operations_async.py
@@ -0,0 +1,448 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectedItemsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protected_items_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protected_items.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_protected_items_get(self, resource_group):
+ response = await self.client.replication_protected_items.get(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protected_items_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ input={
+ "properties": {
+ "policyId": "str",
+ "protectableItemId": "str",
+ "providerSpecificDetails": "enable_protection_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_purge(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ update_protection_input={
+ "properties": {
+ "enableRdpOnTargetOption": "str",
+ "licenseType": "str",
+ "providerSpecificDetails": "update_replication_protected_item_provider_input",
+ "recoveryAvailabilitySetId": "str",
+ "recoveryAzureVMName": "str",
+ "recoveryAzureVMSize": "str",
+ "selectedRecoveryAzureNetworkId": "str",
+ "selectedSourceNicId": "str",
+ "selectedTfoAzureNetworkId": "str",
+ "vmNics": [
+ {
+ "enableAcceleratedNetworkingOnRecovery": bool,
+ "enableAcceleratedNetworkingOnTfo": bool,
+ "ipConfigs": [
+ {
+ "ipConfigName": "str",
+ "isPrimary": bool,
+ "isSeletedForFailover": bool,
+ "recoveryLBBackendAddressPoolIds": ["str"],
+ "recoveryPublicIPAddressId": "str",
+ "recoveryStaticIPAddress": "str",
+ "recoverySubnetName": "str",
+ "tfoLBBackendAddressPoolIds": ["str"],
+ "tfoPublicIPAddressId": "str",
+ "tfoStaticIPAddress": "str",
+ "tfoSubnetName": "str",
+ }
+ ],
+ "nicId": "str",
+ "recoveryNetworkSecurityGroupId": "str",
+ "recoveryNicName": "str",
+ "recoveryNicResourceGroupName": "str",
+ "reuseExistingNic": bool,
+ "selectionType": "str",
+ "targetNicName": "str",
+ "tfoNetworkSecurityGroupId": "str",
+ "tfoNicName": "str",
+ "tfoNicResourceGroupName": "str",
+ "tfoReuseExistingNic": bool,
+ }
+ ],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_add_disks(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_add_disks(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ add_disks_input={"properties": {"providerSpecificDetails": "add_disks_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_apply_recovery_point(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_apply_recovery_point(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ apply_recovery_point_input={
+ "properties": {
+ "providerSpecificDetails": "apply_recovery_point_provider_specific_input",
+ "recoveryPointId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_failover_cancel(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_failover_cancel(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_failover_commit(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_failover_commit(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_planned_failover(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_planned_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "planned_failover_provider_specific_failover_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ disable_protection_input={
+ "properties": {
+ "disableProtectionReason": "str",
+ "replicationProviderInput": "disable_protection_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_remove_disks(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_remove_disks(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ remove_disks_input={"properties": {"providerSpecificDetails": "remove_disks_provider_specific_input"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_repair_replication(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_repair_replication(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_reprotect(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_reprotect(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ reprotect_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "reverse_replication_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_resolve_health_errors(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_resolve_health_errors(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ resolve_health_input={"properties": {"healthErrors": [{"healthErrorId": "str"}]}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_switch_provider(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_switch_provider(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ switch_provider_input={
+ "properties": {
+ "providerSpecificDetails": "switch_provider_specific_input",
+ "targetInstanceType": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_test_failover(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_test_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ testfailover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkId": "str",
+ "networkType": "str",
+ "providerSpecificDetails": "test_failover_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_test_failover_cleanup(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_test_failover_cleanup(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_unplanned_failover(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_unplanned_failover(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "unplanned_failover_provider_specific_input",
+ "sourceSiteOperations": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_update_appliance(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_update_appliance(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ appliance_update_input={
+ "properties": {
+ "providerSpecificDetails": "update_appliance_for_replication_protected_item_provider_specific_input",
+ "targetApplianceId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_begin_update_mobility_service(self, resource_group):
+ response = await (
+ await self.client.replication_protected_items.begin_update_mobility_service(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ update_mobility_service_request={"properties": {"runAsAccountId": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protected_items_list(self, resource_group):
+ response = self.client.replication_protected_items.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations.py
new file mode 100644
index 000000000000..8bb96829969e
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations.py
@@ -0,0 +1,323 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionClustersOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_clusters_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protection_clusters.list_by_replication_protection_containers(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_clusters_get(self, resource_group):
+ response = self.client.replication_protection_clusters.get(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_clusters_begin_create(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ replication_protection_cluster={
+ "id": "str",
+ "name": "str",
+ "properties": {
+ "activeLocation": "str",
+ "agentClusterId": "str",
+ "allowedOperations": ["str"],
+ "areAllClusterNodesRegistered": bool,
+ "clusterFqdn": "str",
+ "clusterNodeFqdns": ["str"],
+ "clusterProtectedItemIds": ["str"],
+ "clusterRegisteredNodes": [
+ {"biosId": "str", "clusterNodeFqdn": "str", "isSharedDiskVirtualNode": bool, "machineId": "str"}
+ ],
+ "currentScenario": {"jobId": "str", "scenarioName": "str", "startTime": "2020-02-20 00:00:00"},
+ "healthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "innerHealthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "lastSuccessfulFailoverTime": "2020-02-20 00:00:00",
+ "lastSuccessfulTestFailoverTime": "2020-02-20 00:00:00",
+ "policyFriendlyName": "str",
+ "policyId": "str",
+ "primaryFabricFriendlyName": "str",
+ "primaryFabricProvider": "str",
+ "primaryProtectionContainerFriendlyName": "str",
+ "protectionClusterType": "str",
+ "protectionState": "str",
+ "protectionStateDescription": "str",
+ "providerSpecificDetails": "replication_cluster_provider_specific_settings",
+ "provisioningState": "str",
+ "recoveryContainerId": "str",
+ "recoveryFabricFriendlyName": "str",
+ "recoveryFabricId": "str",
+ "recoveryProtectionContainerFriendlyName": "str",
+ "replicationHealth": "str",
+ "sharedDiskProperties": {
+ "activeLocation": "str",
+ "allowedOperations": ["str"],
+ "currentScenario": {"jobId": "str", "scenarioName": "str", "startTime": "2020-02-20 00:00:00"},
+ "healthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "innerHealthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "protectionState": "str",
+ "replicationHealth": "str",
+ "sharedDiskProviderSpecificDetails": "shared_disk_replication_provider_specific_settings",
+ "testFailoverState": "str",
+ },
+ "testFailoverState": "str",
+ "testFailoverStateDescription": "str",
+ },
+ "type": "str",
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_purge(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_apply_recovery_point(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_apply_recovery_point(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ apply_cluster_recovery_point_input={
+ "properties": {
+ "providerSpecificDetails": "apply_cluster_recovery_point_provider_specific_input",
+ "clusterRecoveryPointId": "str",
+ "individualNodeRecoveryPoints": ["str"],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_failover_commit(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_failover_commit(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_get_operation_results(self, resource_group):
+ response = self.client.replication_protection_clusters.get_operation_results(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ job_id="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_clusters_begin_repair_replication(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_repair_replication(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_test_failover(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_test_failover(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkId": "str",
+ "networkType": "str",
+ "providerSpecificDetails": "cluster_test_failover_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_test_failover_cleanup(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_test_failover_cleanup(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_begin_unplanned_failover(self, resource_group):
+ response = self.client.replication_protection_clusters.begin_unplanned_failover(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "cluster_unplanned_failover_provider_specific_input",
+ "sourceSiteOperations": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_clusters_list(self, resource_group):
+ response = self.client.replication_protection_clusters.list(
+ resource_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations_async.py
new file mode 100644
index 000000000000..59c098b3574c
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_clusters_operations_async.py
@@ -0,0 +1,349 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionClustersOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_clusters_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protection_clusters.list_by_replication_protection_containers(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_protection_clusters_get(self, resource_group):
+ response = await self.client.replication_protection_clusters.get(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_clusters_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ replication_protection_cluster={
+ "id": "str",
+ "name": "str",
+ "properties": {
+ "activeLocation": "str",
+ "agentClusterId": "str",
+ "allowedOperations": ["str"],
+ "areAllClusterNodesRegistered": bool,
+ "clusterFqdn": "str",
+ "clusterNodeFqdns": ["str"],
+ "clusterProtectedItemIds": ["str"],
+ "clusterRegisteredNodes": [
+ {
+ "biosId": "str",
+ "clusterNodeFqdn": "str",
+ "isSharedDiskVirtualNode": bool,
+ "machineId": "str",
+ }
+ ],
+ "currentScenario": {"jobId": "str", "scenarioName": "str", "startTime": "2020-02-20 00:00:00"},
+ "healthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "innerHealthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "lastSuccessfulFailoverTime": "2020-02-20 00:00:00",
+ "lastSuccessfulTestFailoverTime": "2020-02-20 00:00:00",
+ "policyFriendlyName": "str",
+ "policyId": "str",
+ "primaryFabricFriendlyName": "str",
+ "primaryFabricProvider": "str",
+ "primaryProtectionContainerFriendlyName": "str",
+ "protectionClusterType": "str",
+ "protectionState": "str",
+ "protectionStateDescription": "str",
+ "providerSpecificDetails": "replication_cluster_provider_specific_settings",
+ "provisioningState": "str",
+ "recoveryContainerId": "str",
+ "recoveryFabricFriendlyName": "str",
+ "recoveryFabricId": "str",
+ "recoveryProtectionContainerFriendlyName": "str",
+ "replicationHealth": "str",
+ "sharedDiskProperties": {
+ "activeLocation": "str",
+ "allowedOperations": ["str"],
+ "currentScenario": {
+ "jobId": "str",
+ "scenarioName": "str",
+ "startTime": "2020-02-20 00:00:00",
+ },
+ "healthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "innerHealthErrors": [
+ {
+ "creationTimeUtc": "2020-02-20 00:00:00",
+ "customerResolvability": "str",
+ "entityId": "str",
+ "errorCategory": "str",
+ "errorCode": "str",
+ "errorId": "str",
+ "errorLevel": "str",
+ "errorMessage": "str",
+ "errorSource": "str",
+ "errorType": "str",
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "possibleCauses": "str",
+ "recommendedAction": "str",
+ "recoveryProviderErrorMessage": "str",
+ "summaryMessage": "str",
+ }
+ ],
+ "protectionState": "str",
+ "replicationHealth": "str",
+ "sharedDiskProviderSpecificDetails": "shared_disk_replication_provider_specific_settings",
+ "testFailoverState": "str",
+ },
+ "testFailoverState": "str",
+ "testFailoverStateDescription": "str",
+ },
+ "type": "str",
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_purge(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_apply_recovery_point(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_apply_recovery_point(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ apply_cluster_recovery_point_input={
+ "properties": {
+ "providerSpecificDetails": "apply_cluster_recovery_point_provider_specific_input",
+ "clusterRecoveryPointId": "str",
+ "individualNodeRecoveryPoints": ["str"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_failover_commit(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_failover_commit(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_get_operation_results(self, resource_group):
+ response = await self.client.replication_protection_clusters.get_operation_results(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ job_id="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_clusters_begin_repair_replication(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_repair_replication(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_test_failover(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_test_failover(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkId": "str",
+ "networkType": "str",
+ "providerSpecificDetails": "cluster_test_failover_provider_specific_input",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_test_failover_cleanup(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_test_failover_cleanup(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ cleanup_input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_begin_unplanned_failover(self, resource_group):
+ response = await (
+ await self.client.replication_protection_clusters.begin_unplanned_failover(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ replication_protection_cluster_name="str",
+ failover_input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": "cluster_unplanned_failover_provider_specific_input",
+ "sourceSiteOperations": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_clusters_list(self, resource_group):
+ response = self.client.replication_protection_clusters.list(
+ resource_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations.py
new file mode 100644
index 000000000000..d8e0832f3b80
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations.py
@@ -0,0 +1,117 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionContainerMappingsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_container_mappings_list_by_replication_protection_containers(self, resource_group):
+ response = self.client.replication_protection_container_mappings.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_container_mappings_get(self, resource_group):
+ response = self.client.replication_protection_container_mappings.get(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_container_mappings_begin_create(self, resource_group):
+ response = self.client.replication_protection_container_mappings.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ creation_input={
+ "properties": {
+ "policyId": "str",
+ "providerSpecificInput": "replication_provider_specific_container_mapping_input",
+ "targetProtectionContainerId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_container_mappings_begin_purge(self, resource_group):
+ response = self.client.replication_protection_container_mappings.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protection_container_mappings_begin_update(self, resource_group):
+ response = self.client.replication_protection_container_mappings.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ update_input={
+ "properties": {"providerSpecificInput": "replication_provider_specific_update_container_mapping_input"}
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_container_mappings_begin_delete(self, resource_group):
+ response = self.client.replication_protection_container_mappings.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ removal_input={"properties": {"providerSpecificInput": {"instanceType": "str"}}},
+ api_version="2025-01-01",
+ ).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_replication_protection_container_mappings_list(self, resource_group):
+ response = self.client.replication_protection_container_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations_async.py
new file mode 100644
index 000000000000..a481bc7ae811
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_container_mappings_operations_async.py
@@ -0,0 +1,130 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionContainerMappingsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_container_mappings_list_by_replication_protection_containers(
+ self, resource_group
+ ):
+ response = self.client.replication_protection_container_mappings.list_by_replication_protection_containers(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_protection_container_mappings_get(self, resource_group):
+ response = await self.client.replication_protection_container_mappings.get(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_container_mappings_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_protection_container_mappings.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ creation_input={
+ "properties": {
+ "policyId": "str",
+ "providerSpecificInput": "replication_provider_specific_container_mapping_input",
+ "targetProtectionContainerId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_container_mappings_begin_purge(self, resource_group):
+ response = await (
+ await self.client.replication_protection_container_mappings.begin_purge(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_container_mappings_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_protection_container_mappings.begin_update(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ update_input={
+ "properties": {
+ "providerSpecificInput": "replication_provider_specific_update_container_mapping_input"
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_container_mappings_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_protection_container_mappings.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ mapping_name="str",
+ removal_input={"properties": {"providerSpecificInput": {"instanceType": "str"}}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_container_mappings_list(self, resource_group):
+ response = self.client.replication_protection_container_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations.py
new file mode 100644
index 000000000000..10d12e614760
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations.py
@@ -0,0 +1,131 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionContainersOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_containers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_protection_containers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_containers_get(self, resource_group):
+ response = self.client.replication_protection_containers.get(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_containers_begin_create(self, resource_group):
+ response = self.client.replication_protection_containers.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ creation_input={
+ "properties": {"providerSpecificInput": ["replication_provider_specific_container_creation_input"]}
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_containers_begin_discover_protectable_item(self, resource_group):
+ response = self.client.replication_protection_containers.begin_discover_protectable_item(
+ fabric_name="str",
+ protection_container_name="str",
+ discover_protectable_item_request={
+ "properties": {"friendlyName": "str", "ipAddress": "str", "osType": "str"}
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_containers_begin_delete(self, resource_group):
+ response = self.client.replication_protection_containers.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ ).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_replication_protection_containers_begin_switch_cluster_protection(self, resource_group):
+ response = self.client.replication_protection_containers.begin_switch_cluster_protection(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ switch_input={
+ "properties": {
+ "providerSpecificDetails": "switch_cluster_protection_provider_specific_input",
+ "replicationProtectionClusterName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_containers_begin_switch_protection(self, resource_group):
+ response = self.client.replication_protection_containers.begin_switch_protection(
+ fabric_name="str",
+ protection_container_name="str",
+ switch_input={
+ "properties": {
+ "providerSpecificDetails": "switch_protection_provider_specific_input",
+ "replicationProtectedItemName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_protection_containers_list(self, resource_group):
+ response = self.client.replication_protection_containers.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations_async.py
new file mode 100644
index 000000000000..d76e07e67c47
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_containers_operations_async.py
@@ -0,0 +1,142 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionContainersOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_containers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_protection_containers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_protection_containers_get(self, resource_group):
+ response = await self.client.replication_protection_containers.get(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_containers_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_protection_containers.begin_create(
+ fabric_name="str",
+ protection_container_name="str",
+ creation_input={
+ "properties": {"providerSpecificInput": ["replication_provider_specific_container_creation_input"]}
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_containers_begin_discover_protectable_item(self, resource_group):
+ response = await (
+ await self.client.replication_protection_containers.begin_discover_protectable_item(
+ fabric_name="str",
+ protection_container_name="str",
+ discover_protectable_item_request={
+ "properties": {"friendlyName": "str", "ipAddress": "str", "osType": "str"}
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_containers_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_protection_containers.begin_delete(
+ fabric_name="str",
+ protection_container_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_containers_begin_switch_cluster_protection(self, resource_group):
+ response = await (
+ await self.client.replication_protection_containers.begin_switch_cluster_protection(
+ resource_name="str",
+ fabric_name="str",
+ protection_container_name="str",
+ switch_input={
+ "properties": {
+ "providerSpecificDetails": "switch_cluster_protection_provider_specific_input",
+ "replicationProtectionClusterName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_containers_begin_switch_protection(self, resource_group):
+ response = await (
+ await self.client.replication_protection_containers.begin_switch_protection(
+ fabric_name="str",
+ protection_container_name="str",
+ switch_input={
+ "properties": {
+ "providerSpecificDetails": "switch_protection_provider_specific_input",
+ "replicationProtectedItemName": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_protection_containers_list(self, resource_group):
+ response = self.client.replication_protection_containers.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations.py
new file mode 100644
index 000000000000..6f56d8e2418c
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations.py
@@ -0,0 +1,52 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionIntentsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_intents_list(self, resource_group):
+ response = self.client.replication_protection_intents.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_intents_get(self, resource_group):
+ response = self.client.replication_protection_intents.get(
+ intent_object_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_protection_intents_create(self, resource_group):
+ response = self.client.replication_protection_intents.create(
+ intent_object_name="str",
+ input={"properties": {"providerSpecificDetails": "create_protection_intent_provider_specific_details"}},
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations_async.py
new file mode 100644
index 000000000000..0344d1db0ea5
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_protection_intents_operations_async.py
@@ -0,0 +1,53 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationProtectionIntentsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_intents_list(self, resource_group):
+ response = self.client.replication_protection_intents.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_protection_intents_get(self, resource_group):
+ response = await self.client.replication_protection_intents.get(
+ intent_object_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_protection_intents_create(self, resource_group):
+ response = await self.client.replication_protection_intents.create(
+ intent_object_name="str",
+ input={"properties": {"providerSpecificDetails": "create_protection_intent_provider_specific_details"}},
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations.py
new file mode 100644
index 000000000000..52c05573cf37
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations.py
@@ -0,0 +1,228 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationRecoveryPlansOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_plans_list(self, resource_group):
+ response = self.client.replication_recovery_plans.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_plans_get(self, resource_group):
+ response = self.client.replication_recovery_plans.get(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_plans_begin_create(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_create(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "groups": [
+ {
+ "groupType": "str",
+ "endGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ "replicationProtectedItems": [{"id": "str", "virtualMachineId": "str"}],
+ "startGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ }
+ ],
+ "primaryFabricId": "str",
+ "recoveryFabricId": "str",
+ "failoverDeploymentModel": "str",
+ "providerSpecificInput": ["recovery_plan_provider_specific_input"],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_delete(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_delete(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_update(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_update(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "groups": [
+ {
+ "groupType": "str",
+ "endGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ "replicationProtectedItems": [{"id": "str", "virtualMachineId": "str"}],
+ "startGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ }
+ ]
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_failover_cancel(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_failover_cancel(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_failover_commit(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_failover_commit(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_planned_failover(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_planned_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_reprotect(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_reprotect(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_test_failover(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_test_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkType": "str",
+ "networkId": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_test_failover_cleanup(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_test_failover_cleanup(
+ recovery_plan_name="str",
+ input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_recovery_plans_begin_unplanned_failover(self, resource_group):
+ response = self.client.replication_recovery_plans.begin_unplanned_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "sourceSiteOperations": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations_async.py
new file mode 100644
index 000000000000..067123c605bb
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_plans_operations_async.py
@@ -0,0 +1,249 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationRecoveryPlansOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_recovery_plans_list(self, resource_group):
+ response = self.client.replication_recovery_plans.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_recovery_plans_get(self, resource_group):
+ response = await self.client.replication_recovery_plans.get(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_recovery_plans_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_create(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "groups": [
+ {
+ "groupType": "str",
+ "endGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ "replicationProtectedItems": [{"id": "str", "virtualMachineId": "str"}],
+ "startGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ }
+ ],
+ "primaryFabricId": "str",
+ "recoveryFabricId": "str",
+ "failoverDeploymentModel": "str",
+ "providerSpecificInput": ["recovery_plan_provider_specific_input"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_delete(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_update(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_update(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "groups": [
+ {
+ "groupType": "str",
+ "endGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ "replicationProtectedItems": [{"id": "str", "virtualMachineId": "str"}],
+ "startGroupActions": [
+ {
+ "actionName": "str",
+ "customDetails": "recovery_plan_action_details",
+ "failoverDirections": ["str"],
+ "failoverTypes": ["str"],
+ }
+ ],
+ }
+ ]
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_failover_cancel(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_failover_cancel(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_failover_commit(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_failover_commit(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_planned_failover(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_planned_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_reprotect(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_reprotect(
+ recovery_plan_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_test_failover(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_test_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "networkType": "str",
+ "networkId": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_test_failover_cleanup(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_test_failover_cleanup(
+ recovery_plan_name="str",
+ input={"properties": {"comments": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_plans_begin_unplanned_failover(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_plans.begin_unplanned_failover(
+ recovery_plan_name="str",
+ input={
+ "properties": {
+ "failoverDirection": "str",
+ "sourceSiteOperations": "str",
+ "providerSpecificDetails": ["recovery_plan_provider_specific_failover_input"],
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations.py
new file mode 100644
index 000000000000..a4fa6835888b
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations.py
@@ -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.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationRecoveryServicesProvidersOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_services_providers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_recovery_services_providers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_services_providers_get(self, resource_group):
+ response = self.client.replication_recovery_services_providers.get(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_recovery_services_providers_begin_create(self, resource_group):
+ response = self.client.replication_recovery_services_providers.begin_create(
+ fabric_name="str",
+ provider_name="str",
+ add_provider_input={
+ "properties": {
+ "authenticationIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "machineName": "str",
+ "resourceAccessIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "biosId": "str",
+ "dataPlaneAuthenticationIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "machineId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replication_recovery_services_providers_begin_purge(self, resource_group):
+ response = self.client.replication_recovery_services_providers.begin_purge(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_services_providers_begin_refresh_provider(self, resource_group):
+ response = self.client.replication_recovery_services_providers.begin_refresh_provider(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_services_providers_begin_delete(self, resource_group):
+ response = self.client.replication_recovery_services_providers.begin_delete(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ ).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_replication_recovery_services_providers_list(self, resource_group):
+ response = self.client.replication_recovery_services_providers.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations_async.py
new file mode 100644
index 000000000000..8504a9f714fe
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_recovery_services_providers_operations_async.py
@@ -0,0 +1,137 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationRecoveryServicesProvidersOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_recovery_services_providers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_recovery_services_providers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_recovery_services_providers_get(self, resource_group):
+ response = await self.client.replication_recovery_services_providers.get(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_recovery_services_providers_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_services_providers.begin_create(
+ fabric_name="str",
+ provider_name="str",
+ add_provider_input={
+ "properties": {
+ "authenticationIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "machineName": "str",
+ "resourceAccessIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "biosId": "str",
+ "dataPlaneAuthenticationIdentityInput": {
+ "aadAuthority": "str",
+ "applicationId": "str",
+ "audience": "str",
+ "objectId": "str",
+ "tenantId": "str",
+ },
+ "machineId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_services_providers_begin_purge(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_services_providers.begin_purge(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_services_providers_begin_refresh_provider(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_services_providers.begin_refresh_provider(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_services_providers_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_recovery_services_providers.begin_delete(
+ fabric_name="str",
+ provider_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_recovery_services_providers_list(self, resource_group):
+ response = self.client.replication_recovery_services_providers.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations.py
new file mode 100644
index 000000000000..bb3ee97b6bb5
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations.py
@@ -0,0 +1,83 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationStorageClassificationMappingsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classification_mappings_list_by_replication_storage_classifications(
+ self, resource_group
+ ):
+ response = self.client.replication_storage_classification_mappings.list_by_replication_storage_classifications(
+ fabric_name="str",
+ storage_classification_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classification_mappings_get(self, resource_group):
+ response = self.client.replication_storage_classification_mappings.get(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classification_mappings_begin_create(self, resource_group):
+ response = self.client.replication_storage_classification_mappings.begin_create(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ pairing_input={"properties": {"targetStorageClassificationId": "str"}},
+ api_version="2025-01-01",
+ ).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_replication_storage_classification_mappings_begin_delete(self, resource_group):
+ response = self.client.replication_storage_classification_mappings.begin_delete(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ api_version="2025-01-01",
+ ).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_replication_storage_classification_mappings_list(self, resource_group):
+ response = self.client.replication_storage_classification_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations_async.py
new file mode 100644
index 000000000000..936297c9d2b8
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classification_mappings_operations_async.py
@@ -0,0 +1,88 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationStorageClassificationMappingsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_storage_classification_mappings_list_by_replication_storage_classifications(
+ self, resource_group
+ ):
+ response = self.client.replication_storage_classification_mappings.list_by_replication_storage_classifications(
+ fabric_name="str",
+ storage_classification_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_storage_classification_mappings_get(self, resource_group):
+ response = await self.client.replication_storage_classification_mappings.get(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_storage_classification_mappings_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_storage_classification_mappings.begin_create(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ pairing_input={"properties": {"targetStorageClassificationId": "str"}},
+ api_version="2025-01-01",
+ )
+ ).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_replication_storage_classification_mappings_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replication_storage_classification_mappings.begin_delete(
+ fabric_name="str",
+ storage_classification_name="str",
+ storage_classification_mapping_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replication_storage_classification_mappings_list(self, resource_group):
+ response = self.client.replication_storage_classification_mappings.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations.py
new file mode 100644
index 000000000000..ce1ebae77bd0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations.py
@@ -0,0 +1,52 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationStorageClassificationsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classifications_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_storage_classifications.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classifications_get(self, resource_group):
+ response = self.client.replication_storage_classifications.get(
+ fabric_name="str",
+ storage_classification_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_storage_classifications_list(self, resource_group):
+ response = self.client.replication_storage_classifications.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations_async.py
new file mode 100644
index 000000000000..b5b011c3b4c0
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_storage_classifications_operations_async.py
@@ -0,0 +1,53 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationStorageClassificationsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_storage_classifications_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replication_storage_classifications.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replication_storage_classifications_get(self, resource_group):
+ response = await self.client.replication_storage_classifications.get(
+ fabric_name="str",
+ storage_classification_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_storage_classifications_list(self, resource_group):
+ response = self.client.replication_storage_classifications.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations.py
new file mode 100644
index 000000000000..152d29e6dfe6
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations.py
@@ -0,0 +1,39 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationVaultHealthOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_vault_health_get(self, resource_group):
+ response = self.client.replication_vault_health.get(
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_vault_health_begin_refresh(self, resource_group):
+ response = self.client.replication_vault_health.begin_refresh(
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations_async.py
new file mode 100644
index 000000000000..dcc9b70ff052
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_health_operations_async.py
@@ -0,0 +1,42 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationVaultHealthOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_vault_health_get(self, resource_group):
+ response = await self.client.replication_vault_health.get(
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_vault_health_begin_refresh(self, resource_group):
+ response = await (
+ await self.client.replication_vault_health.begin_refresh(
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations.py
new file mode 100644
index 000000000000..a9cbb470688f
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations.py
@@ -0,0 +1,52 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationVaultSettingOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_vault_setting_list(self, resource_group):
+ response = self.client.replication_vault_setting.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_vault_setting_get(self, resource_group):
+ response = self.client.replication_vault_setting.get(
+ vault_setting_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replication_vault_setting_begin_create(self, resource_group):
+ response = self.client.replication_vault_setting.begin_create(
+ vault_setting_name="str",
+ input={"properties": {"migrationSolutionId": "str", "vmwareToAzureProviderType": "str"}},
+ api_version="2025-01-01",
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations_async.py
new file mode 100644
index 000000000000..538d618314fc
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replication_vault_setting_operations_async.py
@@ -0,0 +1,55 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationVaultSettingOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_vault_setting_list(self, resource_group):
+ response = self.client.replication_vault_setting.list(
+ api_version="2025-01-01",
+ )
+ 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_replication_vault_setting_get(self, resource_group):
+ response = await self.client.replication_vault_setting.get(
+ vault_setting_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replication_vault_setting_begin_create(self, resource_group):
+ response = await (
+ await self.client.replication_vault_setting.begin_create(
+ vault_setting_name="str",
+ input={"properties": {"migrationSolutionId": "str", "vmwareToAzureProviderType": "str"}},
+ api_version="2025-01-01",
+ )
+ ).result() # call '.result()' to poll until service return final result
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations.py
new file mode 100644
index 000000000000..df8e5c588254
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations.py
@@ -0,0 +1,106 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationvCentersOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replicationv_centers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replicationv_centers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replicationv_centers_get(self, resource_group):
+ response = self.client.replicationv_centers.get(
+ fabric_name="str",
+ vcenter_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_replicationv_centers_begin_create(self, resource_group):
+ response = self.client.replicationv_centers.begin_create(
+ fabric_name="str",
+ vcenter_name="str",
+ add_v_center_request={
+ "properties": {
+ "friendlyName": "str",
+ "ipAddress": "str",
+ "port": "str",
+ "processServerId": "str",
+ "runAsAccountId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replicationv_centers_begin_delete(self, resource_group):
+ response = self.client.replicationv_centers.begin_delete(
+ fabric_name="str",
+ vcenter_name="str",
+ api_version="2025-01-01",
+ ).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_replicationv_centers_begin_update(self, resource_group):
+ response = self.client.replicationv_centers.begin_update(
+ fabric_name="str",
+ vcenter_name="str",
+ update_v_center_request={
+ "properties": {
+ "friendlyName": "str",
+ "ipAddress": "str",
+ "port": "str",
+ "processServerId": "str",
+ "runAsAccountId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ ).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_replicationv_centers_list(self, resource_group):
+ response = self.client.replicationv_centers.list(
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations_async.py
new file mode 100644
index 000000000000..48e6f5354640
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_replicationv_centers_operations_async.py
@@ -0,0 +1,113 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementReplicationvCentersOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replicationv_centers_list_by_replication_fabrics(self, resource_group):
+ response = self.client.replicationv_centers.list_by_replication_fabrics(
+ fabric_name="str",
+ api_version="2025-01-01",
+ )
+ 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_replicationv_centers_get(self, resource_group):
+ response = await self.client.replicationv_centers.get(
+ fabric_name="str",
+ vcenter_name="str",
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_replicationv_centers_begin_create(self, resource_group):
+ response = await (
+ await self.client.replicationv_centers.begin_create(
+ fabric_name="str",
+ vcenter_name="str",
+ add_v_center_request={
+ "properties": {
+ "friendlyName": "str",
+ "ipAddress": "str",
+ "port": "str",
+ "processServerId": "str",
+ "runAsAccountId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replicationv_centers_begin_delete(self, resource_group):
+ response = await (
+ await self.client.replicationv_centers.begin_delete(
+ fabric_name="str",
+ vcenter_name="str",
+ api_version="2025-01-01",
+ )
+ ).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_replicationv_centers_begin_update(self, resource_group):
+ response = await (
+ await self.client.replicationv_centers.begin_update(
+ fabric_name="str",
+ vcenter_name="str",
+ update_v_center_request={
+ "properties": {
+ "friendlyName": "str",
+ "ipAddress": "str",
+ "port": "str",
+ "processServerId": "str",
+ "runAsAccountId": "str",
+ }
+ },
+ api_version="2025-01-01",
+ )
+ ).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_replicationv_centers_list(self, resource_group):
+ response = self.client.replicationv_centers.list(
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations.py
new file mode 100644
index 000000000000..29969776eade
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations.py
@@ -0,0 +1,29 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementSupportedOperatingSystemsOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_supported_operating_systems_get(self, resource_group):
+ response = self.client.supported_operating_systems.get(
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations_async.py
new file mode 100644
index 000000000000..66b79a55deb9
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_supported_operating_systems_operations_async.py
@@ -0,0 +1,30 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementSupportedOperatingSystemsOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_supported_operating_systems_get(self, resource_group):
+ response = await self.client.supported_operating_systems.get(
+ api_version="2025-01-01",
+ )
+
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations.py
new file mode 100644
index 000000000000..ce46940cf343
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations.py
@@ -0,0 +1,32 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementTargetComputeSizesOperations(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy
+ def test_target_compute_sizes_list_by_replication_protected_items(self, resource_group):
+ response = self.client.target_compute_sizes.list_by_replication_protected_items(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations_async.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations_async.py
new file mode 100644
index 000000000000..3200df69f8f7
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/generated_tests/test_site_recovery_management_target_compute_sizes_operations_async.py
@@ -0,0 +1,33 @@
+# coding=utf-8
+# --------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# Code generated by Microsoft (R) AutoRest Code Generator.
+# Changes may cause incorrect behavior and will be lost if the code is regenerated.
+# --------------------------------------------------------------------------
+import pytest
+from azure.mgmt.recoveryservicessiterecovery.aio import SiteRecoveryManagementClient
+
+from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer
+from devtools_testutils.aio import recorded_by_proxy_async
+
+AZURE_LOCATION = "eastus"
+
+
+@pytest.mark.skip("you may need to update the auto-generated test case before run it")
+class TestSiteRecoveryManagementTargetComputeSizesOperationsAsync(AzureMgmtRecordedTestCase):
+ def setup_method(self, method):
+ self.client = self.create_mgmt_client(SiteRecoveryManagementClient, is_async=True)
+
+ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION)
+ @recorded_by_proxy_async
+ async def test_target_compute_sizes_list_by_replication_protected_items(self, resource_group):
+ response = self.client.target_compute_sizes.list_by_replication_protected_items(
+ fabric_name="str",
+ protection_container_name="str",
+ replicated_protected_item_name="str",
+ api_version="2025-01-01",
+ )
+ result = [r async for r in response]
+ # please add some check logic here by yourself
+ # ...
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/setup.py b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/setup.py
index b40793525140..2a86fbd20572 100644
--- a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/setup.py
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/setup.py
@@ -74,9 +74,10 @@
"pytyped": ["py.typed"],
},
install_requires=[
- "isodate<1.0.0,>=0.6.1",
- "azure-common~=1.1",
- "azure-mgmt-core>=1.3.2,<2.0.0",
+ "isodate>=0.6.1",
+ "typing-extensions>=4.6.0",
+ "azure-common>=1.1",
+ "azure-mgmt-core>=1.3.2",
],
python_requires=">=3.8",
)
diff --git a/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/stable.json b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/stable.json
new file mode 100644
index 000000000000..81fb9ea4e99e
--- /dev/null
+++ b/sdk/recoveryservices/azure-mgmt-recoveryservicessiterecovery/stable.json
@@ -0,0 +1,86626 @@
+{
+ "azure.mgmt.recoveryservicessiterecovery": {
+ "class_nodes": {
+ "SiteRecoveryManagementClient": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "credential": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "subscription_id": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_group_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "base_url": {
+ "default": "str",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "close": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "client_side_validation": {
+ "attr_type": false
+ },
+ "operations": {
+ "attr_type": "Operations"
+ },
+ "replication_alert_settings": {
+ "attr_type": "ReplicationAlertSettingsOperations"
+ },
+ "replication_appliances": {
+ "attr_type": "ReplicationAppliancesOperations"
+ },
+ "replication_eligibility_results": {
+ "attr_type": "ReplicationEligibilityResultsOperations"
+ },
+ "replication_events": {
+ "attr_type": "ReplicationEventsOperations"
+ },
+ "replication_fabrics": {
+ "attr_type": "ReplicationFabricsOperations"
+ },
+ "replication_logical_networks": {
+ "attr_type": "ReplicationLogicalNetworksOperations"
+ },
+ "replication_networks": {
+ "attr_type": "ReplicationNetworksOperations"
+ },
+ "replication_network_mappings": {
+ "attr_type": "ReplicationNetworkMappingsOperations"
+ },
+ "replication_protection_containers": {
+ "attr_type": "ReplicationProtectionContainersOperations"
+ },
+ "replication_migration_items": {
+ "attr_type": "ReplicationMigrationItemsOperations"
+ },
+ "migration_recovery_points": {
+ "attr_type": "MigrationRecoveryPointsOperations"
+ },
+ "replication_protectable_items": {
+ "attr_type": "ReplicationProtectableItemsOperations"
+ },
+ "replication_protected_items": {
+ "attr_type": "ReplicationProtectedItemsOperations"
+ },
+ "recovery_points": {
+ "attr_type": "RecoveryPointsOperations"
+ },
+ "target_compute_sizes": {
+ "attr_type": "TargetComputeSizesOperations"
+ },
+ "replication_protection_container_mappings": {
+ "attr_type": "ReplicationProtectionContainerMappingsOperations"
+ },
+ "replication_recovery_services_providers": {
+ "attr_type": "ReplicationRecoveryServicesProvidersOperations"
+ },
+ "replication_storage_classifications": {
+ "attr_type": "ReplicationStorageClassificationsOperations"
+ },
+ "replication_storage_classification_mappings": {
+ "attr_type": "ReplicationStorageClassificationMappingsOperations"
+ },
+ "replicationv_centers": {
+ "attr_type": "ReplicationvCentersOperations"
+ },
+ "replication_jobs": {
+ "attr_type": "ReplicationJobsOperations"
+ },
+ "replication_policies": {
+ "attr_type": "ReplicationPoliciesOperations"
+ },
+ "replication_protection_intents": {
+ "attr_type": "ReplicationProtectionIntentsOperations"
+ },
+ "replication_recovery_plans": {
+ "attr_type": "ReplicationRecoveryPlansOperations"
+ },
+ "supported_operating_systems": {
+ "attr_type": "SupportedOperatingSystemsOperations"
+ },
+ "replication_vault_health": {
+ "attr_type": "ReplicationVaultHealthOperations"
+ },
+ "replication_vault_setting": {
+ "attr_type": "ReplicationVaultSettingOperations"
+ }
+ }
+ }
+ },
+ "function_nodes": {}
+ },
+ "azure.mgmt.recoveryservicessiterecovery.models": {
+ "class_nodes": {
+ "A2AAddDisksInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "vm_managed_disks": {
+ "attr_type": "vm_managed_disks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AContainerCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "agent_auto_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "agent_auto_update_status": {
+ "attr_type": "agent_auto_update_status"
+ },
+ "automation_account_arm_id": {
+ "attr_type": "automation_account_arm_id"
+ },
+ "automation_account_authentication_type": {
+ "attr_type": "automation_account_authentication_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACreateProtectionIntentInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_object_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "primary_location": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_location": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_subscription_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "protection_profile_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_network_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "auto_protection_of_data_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_auto_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "primary_location": {
+ "attr_type": "primary_location"
+ },
+ "recovery_location": {
+ "attr_type": "recovery_location"
+ },
+ "recovery_subscription_id": {
+ "attr_type": "recovery_subscription_id"
+ },
+ "recovery_availability_type": {
+ "attr_type": "recovery_availability_type"
+ },
+ "protection_profile_custom_input": {
+ "attr_type": "protection_profile_custom_input"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "attr_type": "primary_staging_storage_account_custom_input"
+ },
+ "recovery_availability_set_custom_input": {
+ "attr_type": "recovery_availability_set_custom_input"
+ },
+ "recovery_virtual_network_custom_input": {
+ "attr_type": "recovery_virtual_network_custom_input"
+ },
+ "recovery_proximity_placement_group_custom_input": {
+ "attr_type": "recovery_proximity_placement_group_custom_input"
+ },
+ "auto_protection_of_data_disk": {
+ "attr_type": "auto_protection_of_data_disk"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "vm_managed_disks": {
+ "attr_type": "vm_managed_disks"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "recovery_boot_diag_storage_account": {
+ "attr_type": "recovery_boot_diag_storage_account"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "recovery_availability_zone": {
+ "attr_type": "recovery_availability_zone"
+ },
+ "agent_auto_update_status": {
+ "attr_type": "agent_auto_update_status"
+ },
+ "automation_account_authentication_type": {
+ "attr_type": "automation_account_authentication_type"
+ },
+ "automation_account_arm_id": {
+ "attr_type": "automation_account_arm_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACrossClusterMigrationApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACrossClusterMigrationContainerCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACrossClusterMigrationEnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "recovery_container_id": {
+ "attr_type": "recovery_container_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACrossClusterMigrationPolicyCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ACrossClusterMigrationReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "lifecycle_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "primary_fabric_location": {
+ "attr_type": "primary_fabric_location"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "lifecycle_id": {
+ "attr_type": "lifecycle_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AEnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_object_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_cloud_service_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "auto_protection_of_data_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "recovery_container_id": {
+ "attr_type": "recovery_container_id"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "recovery_cloud_service_id": {
+ "attr_type": "recovery_cloud_service_id"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "recovery_proximity_placement_group_id": {
+ "attr_type": "recovery_proximity_placement_group_id"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "vm_managed_disks": {
+ "attr_type": "vm_managed_disks"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "attr_type": "recovery_boot_diag_storage_account_id"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "recovery_availability_zone": {
+ "attr_type": "recovery_availability_zone"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "recovery_azure_network_id": {
+ "attr_type": "recovery_azure_network_id"
+ },
+ "recovery_subnet_name": {
+ "attr_type": "recovery_subnet_name"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "attr_type": "recovery_virtual_machine_scale_set_id"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "attr_type": "recovery_capacity_reservation_group_id"
+ },
+ "auto_protection_of_data_disk": {
+ "attr_type": "auto_protection_of_data_disk"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protected_item_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "protected_item_name": {
+ "attr_type": "protected_item_name"
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "fabric_location": {
+ "attr_type": "fabric_location"
+ },
+ "remote_fabric_name": {
+ "attr_type": "remote_fabric_name"
+ },
+ "remote_fabric_location": {
+ "attr_type": "remote_fabric_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AExtendedLocationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "primary_extended_location": {
+ "attr_type": "primary_extended_location"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AFabricSpecificLocationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "initial_primary_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_recovery_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_primary_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_recovery_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "initial_primary_zone": {
+ "attr_type": "initial_primary_zone"
+ },
+ "initial_recovery_zone": {
+ "attr_type": "initial_recovery_zone"
+ },
+ "initial_primary_extended_location": {
+ "attr_type": "initial_primary_extended_location"
+ },
+ "initial_recovery_extended_location": {
+ "attr_type": "initial_recovery_extended_location"
+ },
+ "initial_primary_fabric_location": {
+ "attr_type": "initial_primary_fabric_location"
+ },
+ "initial_recovery_fabric_location": {
+ "attr_type": "initial_recovery_fabric_location"
+ },
+ "primary_zone": {
+ "attr_type": "primary_zone"
+ },
+ "recovery_zone": {
+ "attr_type": "recovery_zone"
+ },
+ "primary_extended_location": {
+ "attr_type": "primary_extended_location"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "primary_fabric_location": {
+ "attr_type": "primary_fabric_location"
+ },
+ "recovery_fabric_location": {
+ "attr_type": "recovery_fabric_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2APolicyCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "multi_vm_sync_status": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2APolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_uri": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_disk_azure_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_disk_uri": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_percentage_completion": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_job_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_pending_in_staging_storage_account_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_disk_level_operation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_disk_encrypted": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secret_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "dek_key_vault_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_disk_key_encrypted": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kek_key_vault_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_uri": {
+ "attr_type": "disk_uri"
+ },
+ "recovery_azure_storage_account_id": {
+ "attr_type": "recovery_azure_storage_account_id"
+ },
+ "primary_disk_azure_storage_account_id": {
+ "attr_type": "primary_disk_azure_storage_account_id"
+ },
+ "recovery_disk_uri": {
+ "attr_type": "recovery_disk_uri"
+ },
+ "disk_name": {
+ "attr_type": "disk_name"
+ },
+ "disk_capacity_in_bytes": {
+ "attr_type": "disk_capacity_in_bytes"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "attr_type": "primary_staging_azure_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "resync_required": {
+ "attr_type": "resync_required"
+ },
+ "monitoring_percentage_completion": {
+ "attr_type": "monitoring_percentage_completion"
+ },
+ "monitoring_job_type": {
+ "attr_type": "monitoring_job_type"
+ },
+ "data_pending_in_staging_storage_account_in_mb": {
+ "attr_type": "data_pending_in_staging_storage_account_in_mb"
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "attr_type": "data_pending_at_source_agent_in_mb"
+ },
+ "disk_state": {
+ "attr_type": "disk_state"
+ },
+ "allowed_disk_level_operation": {
+ "attr_type": "allowed_disk_level_operation"
+ },
+ "is_disk_encrypted": {
+ "attr_type": "is_disk_encrypted"
+ },
+ "secret_identifier": {
+ "attr_type": "secret_identifier"
+ },
+ "dek_key_vault_arm_id": {
+ "attr_type": "dek_key_vault_arm_id"
+ },
+ "is_disk_key_encrypted": {
+ "attr_type": "is_disk_key_encrypted"
+ },
+ "key_identifier": {
+ "attr_type": "key_identifier"
+ },
+ "kek_key_vault_arm_id": {
+ "attr_type": "kek_key_vault_arm_id"
+ },
+ "failover_disk_name": {
+ "attr_type": "failover_disk_name"
+ },
+ "tfo_disk_name": {
+ "attr_type": "tfo_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AProtectedManagedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_target_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_replica_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_orignal_target_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_replica_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_target_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_percentage_completion": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_job_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_pending_in_staging_storage_account_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_disk_level_operation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_disk_encrypted": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secret_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "dek_key_vault_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_disk_key_encrypted": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kek_key_vault_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "recovery_target_disk_id": {
+ "attr_type": "recovery_target_disk_id"
+ },
+ "recovery_replica_disk_id": {
+ "attr_type": "recovery_replica_disk_id"
+ },
+ "recovery_orignal_target_disk_id": {
+ "attr_type": "recovery_orignal_target_disk_id"
+ },
+ "recovery_replica_disk_account_type": {
+ "attr_type": "recovery_replica_disk_account_type"
+ },
+ "recovery_target_disk_account_type": {
+ "attr_type": "recovery_target_disk_account_type"
+ },
+ "recovery_disk_encryption_set_id": {
+ "attr_type": "recovery_disk_encryption_set_id"
+ },
+ "primary_disk_encryption_set_id": {
+ "attr_type": "primary_disk_encryption_set_id"
+ },
+ "disk_name": {
+ "attr_type": "disk_name"
+ },
+ "disk_capacity_in_bytes": {
+ "attr_type": "disk_capacity_in_bytes"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "attr_type": "primary_staging_azure_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "resync_required": {
+ "attr_type": "resync_required"
+ },
+ "monitoring_percentage_completion": {
+ "attr_type": "monitoring_percentage_completion"
+ },
+ "monitoring_job_type": {
+ "attr_type": "monitoring_job_type"
+ },
+ "data_pending_in_staging_storage_account_in_mb": {
+ "attr_type": "data_pending_in_staging_storage_account_in_mb"
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "attr_type": "data_pending_at_source_agent_in_mb"
+ },
+ "disk_state": {
+ "attr_type": "disk_state"
+ },
+ "allowed_disk_level_operation": {
+ "attr_type": "allowed_disk_level_operation"
+ },
+ "is_disk_encrypted": {
+ "attr_type": "is_disk_encrypted"
+ },
+ "secret_identifier": {
+ "attr_type": "secret_identifier"
+ },
+ "dek_key_vault_arm_id": {
+ "attr_type": "dek_key_vault_arm_id"
+ },
+ "is_disk_key_encrypted": {
+ "attr_type": "is_disk_key_encrypted"
+ },
+ "key_identifier": {
+ "attr_type": "key_identifier"
+ },
+ "kek_key_vault_arm_id": {
+ "attr_type": "kek_key_vault_arm_id"
+ },
+ "failover_disk_name": {
+ "attr_type": "failover_disk_name"
+ },
+ "tfo_disk_name": {
+ "attr_type": "tfo_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AProtectionContainerMappingDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "agent_auto_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "schedule_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_schedule_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "agent_auto_update_status": {
+ "attr_type": "agent_auto_update_status"
+ },
+ "automation_account_arm_id": {
+ "attr_type": "automation_account_arm_id"
+ },
+ "automation_account_authentication_type": {
+ "attr_type": "automation_account_authentication_type"
+ },
+ "schedule_name": {
+ "attr_type": "schedule_name"
+ },
+ "job_schedule_name": {
+ "attr_type": "job_schedule_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AProtectionIntentDiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_uri": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_storage_account_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_uri": {
+ "attr_type": "disk_uri"
+ },
+ "recovery_azure_storage_account_custom_input": {
+ "attr_type": "recovery_azure_storage_account_custom_input"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "attr_type": "primary_staging_storage_account_custom_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AProtectionIntentManagedDiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_custom_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_replica_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_target_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "primary_staging_storage_account_custom_input": {
+ "attr_type": "primary_staging_storage_account_custom_input"
+ },
+ "recovery_resource_group_custom_input": {
+ "attr_type": "recovery_resource_group_custom_input"
+ },
+ "recovery_replica_disk_account_type": {
+ "attr_type": "recovery_replica_disk_account_type"
+ },
+ "recovery_target_disk_account_type": {
+ "attr_type": "recovery_target_disk_account_type"
+ },
+ "recovery_disk_encryption_set_id": {
+ "attr_type": "recovery_disk_encryption_set_id"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ARecoveryAvailabilityType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "AVAILABILITY_SET": "AVAILABILITY_SET",
+ "AVAILABILITY_ZONE": "AVAILABILITY_ZONE",
+ "SINGLE": "SINGLE"
+ }
+ },
+ "A2ARecoveryPointDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_sync_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_sync_type": {
+ "attr_type": "recovery_point_sync_type"
+ },
+ "disks": {
+ "attr_type": "disks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ARemoveDisksInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vm_disks_uris": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vm_disks_uris": {
+ "attr_type": "vm_disks_uris"
+ },
+ "vm_managed_disks_ids": {
+ "attr_type": "vm_managed_disks_ids"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_create_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "management_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "unprotected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_cloud_service": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_recovery_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_tfo_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_synced_config_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_percentage_completion": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "monitoring_job_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_replication_agent_update_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_replication_agent_certificate_update_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "lifecycle_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_failover_recovery_fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "auto_protection_of_data_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "initial_primary_zone": {
+ "attr_type": null
+ },
+ "initial_primary_fabric_location": {
+ "attr_type": null
+ },
+ "initial_recovery_zone": {
+ "attr_type": null
+ },
+ "initial_primary_extended_location": {
+ "attr_type": "initial_primary_extended_location"
+ },
+ "initial_recovery_extended_location": {
+ "attr_type": "initial_recovery_extended_location"
+ },
+ "initial_recovery_fabric_location": {
+ "attr_type": null
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_group_create_option": {
+ "attr_type": "multi_vm_group_create_option"
+ },
+ "management_id": {
+ "attr_type": "management_id"
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "unprotected_disks": {
+ "attr_type": "unprotected_disks"
+ },
+ "protected_managed_disks": {
+ "attr_type": "protected_managed_disks"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "attr_type": "recovery_boot_diag_storage_account_id"
+ },
+ "primary_fabric_location": {
+ "attr_type": "primary_fabric_location"
+ },
+ "recovery_fabric_location": {
+ "attr_type": "recovery_fabric_location"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "recovery_azure_vm_size": {
+ "attr_type": "recovery_azure_vm_size"
+ },
+ "recovery_azure_vm_name": {
+ "attr_type": "recovery_azure_vm_name"
+ },
+ "recovery_azure_resource_group_id": {
+ "attr_type": "recovery_azure_resource_group_id"
+ },
+ "recovery_cloud_service": {
+ "attr_type": "recovery_cloud_service"
+ },
+ "recovery_availability_set": {
+ "attr_type": "recovery_availability_set"
+ },
+ "selected_recovery_azure_network_id": {
+ "attr_type": "selected_recovery_azure_network_id"
+ },
+ "selected_tfo_azure_network_id": {
+ "attr_type": "selected_tfo_azure_network_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "vm_synced_config_details": {
+ "attr_type": "vm_synced_config_details"
+ },
+ "monitoring_percentage_completion": {
+ "attr_type": "monitoring_percentage_completion"
+ },
+ "monitoring_job_type": {
+ "attr_type": "monitoring_job_type"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "is_replication_agent_update_required": {
+ "attr_type": "is_replication_agent_update_required"
+ },
+ "agent_certificate_expiry_date": {
+ "attr_type": null
+ },
+ "is_replication_agent_certificate_update_required": {
+ "attr_type": "is_replication_agent_certificate_update_required"
+ },
+ "recovery_fabric_object_id": {
+ "attr_type": "recovery_fabric_object_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "lifecycle_id": {
+ "attr_type": "lifecycle_id"
+ },
+ "test_failover_recovery_fabric_object_id": {
+ "attr_type": "test_failover_recovery_fabric_object_id"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "primary_availability_zone": {
+ "attr_type": "primary_availability_zone"
+ },
+ "recovery_availability_zone": {
+ "attr_type": "recovery_availability_zone"
+ },
+ "primary_extended_location": {
+ "attr_type": "primary_extended_location"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "vm_encryption_type": {
+ "attr_type": null
+ },
+ "tfo_azure_vm_name": {
+ "attr_type": "tfo_azure_vm_name"
+ },
+ "recovery_azure_generation": {
+ "attr_type": null
+ },
+ "recovery_proximity_placement_group_id": {
+ "attr_type": "recovery_proximity_placement_group_id"
+ },
+ "auto_protection_of_data_disk": {
+ "attr_type": "auto_protection_of_data_disk"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "attr_type": "recovery_virtual_machine_scale_set_id"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "attr_type": "recovery_capacity_reservation_group_id"
+ },
+ "churn_option_selected": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AReplicationIntentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_availability_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_subscription_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_profile": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_staging_storage_account": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_network": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "auto_protection_of_data_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_auto_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "primary_location": {
+ "attr_type": "primary_location"
+ },
+ "recovery_location": {
+ "attr_type": "recovery_location"
+ },
+ "recovery_subscription_id": {
+ "attr_type": "recovery_subscription_id"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "vm_managed_disks": {
+ "attr_type": "vm_managed_disks"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "protection_profile": {
+ "attr_type": "protection_profile"
+ },
+ "primary_staging_storage_account": {
+ "attr_type": "primary_staging_storage_account"
+ },
+ "recovery_availability_set": {
+ "attr_type": "recovery_availability_set"
+ },
+ "recovery_virtual_network": {
+ "attr_type": "recovery_virtual_network"
+ },
+ "recovery_proximity_placement_group": {
+ "attr_type": "recovery_proximity_placement_group"
+ },
+ "auto_protection_of_data_disk": {
+ "attr_type": "auto_protection_of_data_disk"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "recovery_boot_diag_storage_account": {
+ "attr_type": "recovery_boot_diag_storage_account"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "recovery_availability_zone": {
+ "attr_type": "recovery_availability_zone"
+ },
+ "recovery_availability_type": {
+ "attr_type": "recovery_availability_type"
+ },
+ "agent_auto_update_status": {
+ "attr_type": "agent_auto_update_status"
+ },
+ "automation_account_arm_id": {
+ "attr_type": "automation_account_arm_id"
+ },
+ "automation_account_authentication_type": {
+ "attr_type": "automation_account_authentication_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_cloud_service_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_container_id": {
+ "attr_type": "recovery_container_id"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "recovery_cloud_service_id": {
+ "attr_type": "recovery_cloud_service_id"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ARpRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "LATEST": "LATEST",
+ "LATEST_APPLICATION_CONSISTENT": "LATEST_APPLICATION_CONSISTENT",
+ "LATEST_CRASH_CONSISTENT": "LATEST_CRASH_CONSISTENT",
+ "LATEST_PROCESSED": "LATEST_PROCESSED"
+ }
+ },
+ "A2ASwitchProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_cloud_service_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_container_id": {
+ "attr_type": "recovery_container_id"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "vm_managed_disks": {
+ "attr_type": "vm_managed_disks"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "recovery_cloud_service_id": {
+ "attr_type": "recovery_cloud_service_id"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "attr_type": "recovery_boot_diag_storage_account_id"
+ },
+ "recovery_availability_zone": {
+ "attr_type": "recovery_availability_zone"
+ },
+ "recovery_proximity_placement_group_id": {
+ "attr_type": "recovery_proximity_placement_group_id"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "attr_type": "recovery_virtual_machine_scale_set_id"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "attr_type": "recovery_capacity_reservation_group_id"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2ATestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cloud_service_creation_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "cloud_service_creation_option": {
+ "attr_type": "cloud_service_creation_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AUnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cloud_service_creation_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "cloud_service_creation_option": {
+ "attr_type": "cloud_service_creation_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AUnprotectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_lun_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_auto_protection_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_lun_id": {
+ "attr_type": "disk_lun_id"
+ },
+ "disk_auto_protection_status": {
+ "attr_type": "disk_auto_protection_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AUpdateContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "agent_auto_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "automation_account_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "agent_auto_update_status": {
+ "attr_type": "agent_auto_update_status"
+ },
+ "automation_account_arm_id": {
+ "attr_type": "automation_account_arm_id"
+ },
+ "automation_account_authentication_type": {
+ "attr_type": "automation_account_authentication_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AUpdateReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_cloud_service_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "managed_disk_update_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_cloud_service_id": {
+ "attr_type": "recovery_cloud_service_id"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "managed_disk_update_details": {
+ "attr_type": "managed_disk_update_details"
+ },
+ "recovery_boot_diag_storage_account_id": {
+ "attr_type": "recovery_boot_diag_storage_account_id"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "tfo_azure_vm_name": {
+ "attr_type": "tfo_azure_vm_name"
+ },
+ "recovery_proximity_placement_group_id": {
+ "attr_type": "recovery_proximity_placement_group_id"
+ },
+ "recovery_virtual_machine_scale_set_id": {
+ "attr_type": "recovery_virtual_machine_scale_set_id"
+ },
+ "recovery_capacity_reservation_group_id": {
+ "attr_type": "recovery_capacity_reservation_group_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AVmDiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_uri": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_uri": {
+ "attr_type": "disk_uri"
+ },
+ "recovery_azure_storage_account_id": {
+ "attr_type": "recovery_azure_storage_account_id"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "attr_type": "primary_staging_azure_storage_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AVmManagedDiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_resource_group_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_replica_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_target_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "primary_staging_azure_storage_account_id": {
+ "attr_type": "primary_staging_azure_storage_account_id"
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "recovery_replica_disk_account_type": {
+ "attr_type": "recovery_replica_disk_account_type"
+ },
+ "recovery_target_disk_account_type": {
+ "attr_type": "recovery_target_disk_account_type"
+ },
+ "recovery_disk_encryption_set_id": {
+ "attr_type": "recovery_disk_encryption_set_id"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AVmManagedDiskUpdateDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_target_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_replica_disk_account_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "recovery_target_disk_account_type": {
+ "attr_type": "recovery_target_disk_account_type"
+ },
+ "recovery_replica_disk_account_type": {
+ "attr_type": "recovery_replica_disk_account_type"
+ },
+ "disk_encryption_info": {
+ "attr_type": "disk_encryption_info"
+ },
+ "failover_disk_name": {
+ "attr_type": "failover_disk_name"
+ },
+ "tfo_disk_name": {
+ "attr_type": "tfo_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "A2AZoneDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "source": {
+ "attr_type": "source"
+ },
+ "target": {
+ "attr_type": "target"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ASRTask": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "task_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "end_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_actions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "task_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "group_task_custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "task_id": {
+ "attr_type": "task_id"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "start_time": {
+ "attr_type": "start_time"
+ },
+ "end_time": {
+ "attr_type": "end_time"
+ },
+ "allowed_actions": {
+ "attr_type": "allowed_actions"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "state": {
+ "attr_type": "state"
+ },
+ "state_description": {
+ "attr_type": "state_description"
+ },
+ "task_type": {
+ "attr_type": "task_type"
+ },
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "group_task_custom_details": {
+ "attr_type": "group_task_custom_details"
+ },
+ "errors": {
+ "attr_type": "errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddDisksInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddDisksInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddDisksProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddRecoveryServicesProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddRecoveryServicesProviderInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "machine_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "authentication_identity_input": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "resource_access_identity_input": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "machine_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "bios_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_plane_authentication_identity_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "machine_name": {
+ "attr_type": "machine_name"
+ },
+ "machine_id": {
+ "attr_type": "machine_id"
+ },
+ "bios_id": {
+ "attr_type": "bios_id"
+ },
+ "authentication_identity_input": {
+ "attr_type": "authentication_identity_input"
+ },
+ "resource_access_identity_input": {
+ "attr_type": "resource_access_identity_input"
+ },
+ "data_plane_authentication_identity_input": {
+ "attr_type": "data_plane_authentication_identity_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddVCenterRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AddVCenterRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "port": {
+ "attr_type": "port"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AgentAutoUpdateStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DISABLED": "DISABLED",
+ "ENABLED": "ENABLED"
+ }
+ },
+ "AgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "agent_id": {
+ "attr_type": null
+ },
+ "machine_id": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "disks": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AgentDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": null
+ },
+ "disk_name": {
+ "attr_type": null
+ },
+ "is_os_disk": {
+ "attr_type": null
+ },
+ "capacity_in_bytes": {
+ "attr_type": null
+ },
+ "lun_id": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AgentUpgradeBlockedReason": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "AGENT_NO_HEARTBEAT": "AGENT_NO_HEARTBEAT",
+ "ALREADY_ON_LATEST_VERSION": "ALREADY_ON_LATEST_VERSION",
+ "DISTRO_IS_NOT_REPORTED": "DISTRO_IS_NOT_REPORTED",
+ "DISTRO_NOT_SUPPORTED_FOR_UPGRADE": "DISTRO_NOT_SUPPORTED_FOR_UPGRADE",
+ "INCOMPATIBLE_APPLIANCE_VERSION": "INCOMPATIBLE_APPLIANCE_VERSION",
+ "INVALID_AGENT_VERSION": "INVALID_AGENT_VERSION",
+ "INVALID_DRIVER_VERSION": "INVALID_DRIVER_VERSION",
+ "MISSING_UPGRADE_PATH": "MISSING_UPGRADE_PATH",
+ "NOT_PROTECTED": "NOT_PROTECTED",
+ "PROCESS_SERVER_NO_HEARTBEAT": "PROCESS_SERVER_NO_HEARTBEAT",
+ "RCM_PROXY_NO_HEARTBEAT": "RCM_PROXY_NO_HEARTBEAT",
+ "REBOOT_REQUIRED": "REBOOT_REQUIRED",
+ "UNKNOWN": "UNKNOWN",
+ "UNSUPPORTED_PROTECTION_SCENARIO": "UNSUPPORTED_PROTECTION_SCENARIO"
+ }
+ },
+ "AgentVersionStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DEPRECATED": "DEPRECATED",
+ "NOT_SUPPORTED": "NOT_SUPPORTED",
+ "SECURITY_UPDATE_REQUIRED": "SECURITY_UPDATE_REQUIRED",
+ "SUPPORTED": "SUPPORTED",
+ "UPDATE_REQUIRED": "UPDATE_REQUIRED"
+ }
+ },
+ "Alert": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AlertCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AlertProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "send_to_owners": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_email_addresses": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "locale": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "send_to_owners": {
+ "attr_type": "send_to_owners"
+ },
+ "custom_email_addresses": {
+ "attr_type": "custom_email_addresses"
+ },
+ "locale": {
+ "attr_type": "locale"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AlternateLocationRecoveryOption": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CREATE_VM_IF_NOT_FOUND": "CREATE_VM_IF_NOT_FOUND",
+ "NO_ACTION": "NO_ACTION"
+ }
+ },
+ "ApplianceCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplianceMonitoringDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "cpu_details": {
+ "attr_type": null
+ },
+ "ram_details": {
+ "attr_type": null
+ },
+ "datastore_snapshot": {
+ "attr_type": null
+ },
+ "disks_replication_details": {
+ "attr_type": null
+ },
+ "esxi_nfc_buffer": {
+ "attr_type": null
+ },
+ "network_bandwidth": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplianceQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_type": {
+ "attr_type": "provider_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplianceResourceDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "capacity": {
+ "attr_type": null
+ },
+ "process_utilization": {
+ "attr_type": null
+ },
+ "total_utilization": {
+ "attr_type": null
+ },
+ "status": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplianceSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplyRecoveryPointInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ApplyRecoveryPointProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AsrJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AutoProtectionOfDataDisk": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DISABLED": "DISABLED",
+ "ENABLED": "ENABLED"
+ }
+ },
+ "AutomationAccountAuthenticationType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "RUN_AS_ACCOUNT": "RUN_AS_ACCOUNT",
+ "SYSTEM_ASSIGNED_IDENTITY": "SYSTEM_ASSIGNED_IDENTITY"
+ }
+ },
+ "AutomationRunbookTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cloud_service_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "subscription_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "account_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "runbook_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "runbook_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_output": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_primary_side_script": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "cloud_service_name": {
+ "attr_type": "cloud_service_name"
+ },
+ "subscription_id": {
+ "attr_type": "subscription_id"
+ },
+ "account_name": {
+ "attr_type": "account_name"
+ },
+ "runbook_id": {
+ "attr_type": "runbook_id"
+ },
+ "runbook_name": {
+ "attr_type": "runbook_name"
+ },
+ "job_id": {
+ "attr_type": "job_id"
+ },
+ "job_output": {
+ "attr_type": "job_output"
+ },
+ "is_primary_side_script": {
+ "attr_type": "is_primary_side_script"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureFabricCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureFabricSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "container_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "zones": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "extended_locations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "location_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "container_ids": {
+ "attr_type": "container_ids"
+ },
+ "zones": {
+ "attr_type": "zones"
+ },
+ "extended_locations": {
+ "attr_type": "extended_locations"
+ },
+ "location_details": {
+ "attr_type": "location_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureToAzureCreateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_network_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_network_id": {
+ "attr_type": "primary_network_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureToAzureNetworkMappingSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_fabric_location": {
+ "attr_type": "primary_fabric_location"
+ },
+ "recovery_fabric_location": {
+ "attr_type": "recovery_fabric_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureToAzureUpdateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_network_id": {
+ "attr_type": "primary_network_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureToAzureVmSyncedConfigDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "input_endpoints": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "tags": {
+ "attr_type": "tags"
+ },
+ "input_endpoints": {
+ "attr_type": "input_endpoints"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "AzureVmDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vhd_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "max_size_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "lun_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "vhd_type": {
+ "attr_type": "vhd_type"
+ },
+ "vhd_id": {
+ "attr_type": "vhd_id"
+ },
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "vhd_name": {
+ "attr_type": "vhd_name"
+ },
+ "max_size_mb": {
+ "attr_type": "max_size_mb"
+ },
+ "target_disk_location": {
+ "attr_type": "target_disk_location"
+ },
+ "target_disk_name": {
+ "attr_type": "target_disk_name"
+ },
+ "lun_id": {
+ "attr_type": "lun_id"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "custom_target_disk_name": {
+ "attr_type": "custom_target_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ChurnOptionSelected": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "HIGH": "HIGH",
+ "NORMAL": "NORMAL"
+ }
+ },
+ "ComputeSizeErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "severity": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "message": {
+ "attr_type": "message"
+ },
+ "severity": {
+ "attr_type": "severity"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ConfigurationSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ConfigureAlertRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ConfigureAlertRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "send_to_owners": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_email_addresses": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "locale": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "send_to_owners": {
+ "attr_type": "send_to_owners"
+ },
+ "custom_email_addresses": {
+ "attr_type": "custom_email_addresses"
+ },
+ "locale": {
+ "attr_type": "locale"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ConsistencyCheckTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vm_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vm_details": {
+ "attr_type": "vm_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateNetworkMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_network_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_fabric_name": {
+ "attr_type": "recovery_fabric_name"
+ },
+ "recovery_network_id": {
+ "attr_type": "recovery_network_id"
+ },
+ "fabric_specific_details": {
+ "attr_type": "fabric_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreatePolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreatePolicyInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionContainerInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionContainerInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionContainerMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_protection_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_protection_container_id": {
+ "attr_type": "target_protection_container_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionIntentInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionIntentProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateProtectionIntentProviderSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateRecoveryPlanInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CreateRecoveryPlanInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_fabric_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "groups": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "failover_deployment_model": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "primary_fabric_id": {
+ "attr_type": "primary_fabric_id"
+ },
+ "recovery_fabric_id": {
+ "attr_type": "recovery_fabric_id"
+ },
+ "failover_deployment_model": {
+ "attr_type": "failover_deployment_model"
+ },
+ "groups": {
+ "attr_type": "groups"
+ },
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CriticalJobHistoryDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "job_name": {
+ "attr_type": null
+ },
+ "job_id": {
+ "attr_type": null
+ },
+ "start_time": {
+ "attr_type": null
+ },
+ "job_status": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CurrentJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "job_name": {
+ "attr_type": null
+ },
+ "job_id": {
+ "attr_type": null
+ },
+ "start_time": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "CurrentScenarioDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "scenario_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "scenario_name": {
+ "attr_type": "scenario_name"
+ },
+ "job_id": {
+ "attr_type": "job_id"
+ },
+ "start_time": {
+ "attr_type": "start_time"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DataStore": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "symbolic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "uuid": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "capacity": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "free_space": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "symbolic_name": {
+ "attr_type": "symbolic_name"
+ },
+ "uuid": {
+ "attr_type": "uuid"
+ },
+ "capacity": {
+ "attr_type": "capacity"
+ },
+ "free_space": {
+ "attr_type": "free_space"
+ },
+ "type": {
+ "attr_type": "type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DataStoreUtilizationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "total_snapshots_supported": {
+ "attr_type": null
+ },
+ "total_snapshots_created": {
+ "attr_type": null
+ },
+ "data_store_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DataSyncStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "FOR_DOWN_TIME": "FOR_DOWN_TIME",
+ "FOR_SYNCHRONIZATION": "FOR_SYNCHRONIZATION"
+ }
+ },
+ "DisableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DisableProtectionInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_reason": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_provider_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disable_protection_reason": {
+ "attr_type": "disable_protection_reason"
+ },
+ "replication_provider_input": {
+ "attr_type": "replication_provider_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DisableProtectionProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DisableProtectionReason": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "MIGRATION_COMPLETE": "MIGRATION_COMPLETE",
+ "NOT_SPECIFIED": "NOT_SPECIFIED"
+ }
+ },
+ "DiscoverProtectableItemRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DiscoverProtectableItemRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DiskAccountType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "PREMIUM_LRS": "PREMIUM_LRS",
+ "STANDARD_LRS": "STANDARD_LRS",
+ "STANDARD_SSD_LRS": "STANDARD_SSD_LRS"
+ }
+ },
+ "DiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "max_size_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "max_size_mb": {
+ "attr_type": "max_size_mb"
+ },
+ "vhd_type": {
+ "attr_type": "vhd_type"
+ },
+ "vhd_id": {
+ "attr_type": "vhd_id"
+ },
+ "vhd_name": {
+ "attr_type": "vhd_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DiskEncryptionInfo": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_encryption_key_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_encryption_key_info": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_encryption_key_info": {
+ "attr_type": "disk_encryption_key_info"
+ },
+ "key_encryption_key_info": {
+ "attr_type": "key_encryption_key_info"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DiskEncryptionKeyInfo": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "secret_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_vault_resource_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "secret_identifier": {
+ "attr_type": "secret_identifier"
+ },
+ "key_vault_resource_arm_id": {
+ "attr_type": "key_vault_resource_arm_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DiskReplicationProgressHealth": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "IN_PROGRESS": "IN_PROGRESS",
+ "NONE": "NONE",
+ "NO_PROGRESS": "NO_PROGRESS",
+ "QUEUED": "QUEUED",
+ "SLOW_PROGRESS": "SLOW_PROGRESS"
+ }
+ },
+ "DiskVolumeDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "label": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "label": {
+ "attr_type": "label"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "Display": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resource": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "operation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider": {
+ "attr_type": "provider"
+ },
+ "resource": {
+ "attr_type": "resource"
+ },
+ "operation": {
+ "attr_type": "operation"
+ },
+ "description": {
+ "attr_type": "description"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "DraDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "forward_protected_item_count": {
+ "attr_type": null
+ },
+ "reverse_protected_item_count": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableMigrationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableMigrationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableMigrationProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableProtectionInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protectable_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "protectable_item_id": {
+ "attr_type": "protectable_item_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EnableProtectionProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EncryptionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kek_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kek_cert_thumbprint": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kek_cert_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "kek_state": {
+ "attr_type": "kek_state"
+ },
+ "kek_cert_thumbprint": {
+ "attr_type": "kek_cert_thumbprint"
+ },
+ "kek_cert_expiry_date": {
+ "attr_type": "kek_cert_expiry_date"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ErrorAdditionalInfo": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "type": {
+ "attr_type": null
+ },
+ "info": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ErrorDetail": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "code": {
+ "attr_type": null
+ },
+ "message": {
+ "attr_type": null
+ },
+ "target": {
+ "attr_type": null
+ },
+ "details": {
+ "attr_type": null
+ },
+ "additional_info": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ErrorResponse": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "error": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error": {
+ "attr_type": "error"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EthernetAddressType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DYNAMIC": "DYNAMIC",
+ "STATIC": "STATIC"
+ }
+ },
+ "Event": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EventCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EventProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "event_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "event_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_correlation_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "severity": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "time_of_occurrence": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "event_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "event_code": {
+ "attr_type": "event_code"
+ },
+ "description": {
+ "attr_type": "description"
+ },
+ "event_type": {
+ "attr_type": "event_type"
+ },
+ "affected_object_friendly_name": {
+ "attr_type": "affected_object_friendly_name"
+ },
+ "affected_object_correlation_id": {
+ "attr_type": "affected_object_correlation_id"
+ },
+ "severity": {
+ "attr_type": "severity"
+ },
+ "time_of_occurrence": {
+ "attr_type": "time_of_occurrence"
+ },
+ "fabric_id": {
+ "attr_type": "fabric_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "event_specific_details": {
+ "attr_type": "event_specific_details"
+ },
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EventProviderSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EventQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "event_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "severity": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "event_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_correlation_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "end_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "event_code": {
+ "attr_type": "event_code"
+ },
+ "severity": {
+ "attr_type": "severity"
+ },
+ "event_type": {
+ "attr_type": "event_type"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "affected_object_friendly_name": {
+ "attr_type": "affected_object_friendly_name"
+ },
+ "affected_object_correlation_id": {
+ "attr_type": "affected_object_correlation_id"
+ },
+ "start_time": {
+ "attr_type": "start_time"
+ },
+ "end_time": {
+ "attr_type": "end_time"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "EventSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingProtectionProfile": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_profile_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "protection_profile_id": {
+ "attr_type": "protection_profile_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingRecoveryAvailabilitySet": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingRecoveryProximityPlacementGroup": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "recovery_proximity_placement_group_id": {
+ "attr_type": "recovery_proximity_placement_group_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingRecoveryResourceGroup": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "recovery_resource_group_id": {
+ "attr_type": "recovery_resource_group_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingRecoveryVirtualNetwork": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_virtual_network_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "recovery_virtual_network_id": {
+ "attr_type": "recovery_virtual_network_id"
+ },
+ "recovery_subnet_name": {
+ "attr_type": "recovery_subnet_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExistingStorageAccount": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "azure_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "azure_storage_account_id": {
+ "attr_type": "azure_storage_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExportJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "blob_uri": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sas_token": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "blob_uri": {
+ "attr_type": "blob_uri"
+ },
+ "sas_token": {
+ "attr_type": "sas_token"
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExportJobOutputSerializationType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "EXCEL": "EXCEL",
+ "JSON": "JSON",
+ "XML": "XML"
+ }
+ },
+ "ExtendedLocation": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "type": {
+ "attr_type": "type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ExtendedLocationType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "EDGE_ZONE": "EDGE_ZONE"
+ }
+ },
+ "Fabric": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricCreationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "encryption_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rollover_encryption_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "internal_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "bcdr_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "encryption_details": {
+ "attr_type": "encryption_details"
+ },
+ "rollover_encryption_details": {
+ "attr_type": "rollover_encryption_details"
+ },
+ "internal_identifier": {
+ "attr_type": "internal_identifier"
+ },
+ "bcdr_state": {
+ "attr_type": "bcdr_state"
+ },
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "health_error_details": {
+ "attr_type": "health_error_details"
+ },
+ "health": {
+ "attr_type": "health"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "zone_to_zone_mappings": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "extended_location_mappings": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "location_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fetch_agent_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "bios_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fqdn": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovery_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "zone_to_zone_mappings": {
+ "attr_type": "zone_to_zone_mappings"
+ },
+ "extended_location_mappings": {
+ "attr_type": "extended_location_mappings"
+ },
+ "location_details": {
+ "attr_type": "location_details"
+ },
+ "fetch_agent_details": {
+ "attr_type": "fetch_agent_details"
+ },
+ "bios_id": {
+ "attr_type": "bios_id"
+ },
+ "fqdn": {
+ "attr_type": "fqdn"
+ },
+ "discovery_type": {
+ "attr_type": "discovery_type"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricReplicationGroupTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_task": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "skipped_reason": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "skipped_reason_string": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "skipped_reason": {
+ "attr_type": "skipped_reason"
+ },
+ "skipped_reason_string": {
+ "attr_type": "skipped_reason_string"
+ },
+ "job_task": {
+ "attr_type": "job_task"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricSpecificCreateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricSpecificCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FabricSpecificUpdateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FailoverDeploymentModel": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CLASSIC": "CLASSIC",
+ "NOT_APPLICABLE": "NOT_APPLICABLE",
+ "RESOURCE_MANAGER": "RESOURCE_MANAGER"
+ }
+ },
+ "FailoverJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_item_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "protected_item_details": {
+ "attr_type": "protected_item_details"
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FailoverProcessServerRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FailoverProcessServerRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vms_to_migrate": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "update_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "container_name": {
+ "attr_type": "container_name"
+ },
+ "source_process_server_id": {
+ "attr_type": "source_process_server_id"
+ },
+ "target_process_server_id": {
+ "attr_type": "target_process_server_id"
+ },
+ "vms_to_migrate": {
+ "attr_type": "vms_to_migrate"
+ },
+ "update_type": {
+ "attr_type": "update_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "FailoverReplicationProtectedItemDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_vm_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_connection_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "subnet": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "test_vm_name": {
+ "attr_type": "test_vm_name"
+ },
+ "test_vm_friendly_name": {
+ "attr_type": "test_vm_friendly_name"
+ },
+ "network_connection_status": {
+ "attr_type": "network_connection_status"
+ },
+ "network_friendly_name": {
+ "attr_type": "network_friendly_name"
+ },
+ "subnet": {
+ "attr_type": "subnet"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "recovery_point_time": {
+ "attr_type": "recovery_point_time"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "GatewayOperationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "state": {
+ "attr_type": null
+ },
+ "progress_percentage": {
+ "attr_type": null
+ },
+ "time_elapsed": {
+ "attr_type": null
+ },
+ "time_remaining": {
+ "attr_type": null
+ },
+ "upload_speed": {
+ "attr_type": null
+ },
+ "host_name": {
+ "attr_type": null
+ },
+ "data_stores": {
+ "attr_type": null
+ },
+ "vmware_read_throughput": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "GroupTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "child_tasks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "child_tasks": {
+ "attr_type": "child_tasks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HealthError": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "inner_health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_source": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_level": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_category": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "summary_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "possible_causes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recommended_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "creation_time_utc": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_provider_error_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "entity_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "customer_resolvability": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "inner_health_errors": {
+ "attr_type": "inner_health_errors"
+ },
+ "error_source": {
+ "attr_type": "error_source"
+ },
+ "error_type": {
+ "attr_type": "error_type"
+ },
+ "error_level": {
+ "attr_type": "error_level"
+ },
+ "error_category": {
+ "attr_type": "error_category"
+ },
+ "error_code": {
+ "attr_type": "error_code"
+ },
+ "summary_message": {
+ "attr_type": "summary_message"
+ },
+ "error_message": {
+ "attr_type": "error_message"
+ },
+ "possible_causes": {
+ "attr_type": "possible_causes"
+ },
+ "recommended_action": {
+ "attr_type": "recommended_action"
+ },
+ "creation_time_utc": {
+ "attr_type": "creation_time_utc"
+ },
+ "recovery_provider_error_message": {
+ "attr_type": "recovery_provider_error_message"
+ },
+ "entity_id": {
+ "attr_type": "entity_id"
+ },
+ "error_id": {
+ "attr_type": "error_id"
+ },
+ "customer_resolvability": {
+ "attr_type": "customer_resolvability"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HealthErrorCategory": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "AGENT_AUTO_UPDATE_ARTIFACT_DELETED": "AGENT_AUTO_UPDATE_ARTIFACT_DELETED",
+ "AGENT_AUTO_UPDATE_INFRA": "AGENT_AUTO_UPDATE_INFRA",
+ "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT": "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT",
+ "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT_EXPIRED": "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT_EXPIRED",
+ "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT_EXPIRY": "AGENT_AUTO_UPDATE_RUN_AS_ACCOUNT_EXPIRY",
+ "CONFIGURATION": "CONFIGURATION",
+ "FABRIC_INFRASTRUCTURE": "FABRIC_INFRASTRUCTURE",
+ "NONE": "NONE",
+ "REPLICATION": "REPLICATION",
+ "TEST_FAILOVER": "TEST_FAILOVER",
+ "VERSION_EXPIRY": "VERSION_EXPIRY"
+ }
+ },
+ "HealthErrorCustomerResolvability": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "ALLOWED": "ALLOWED",
+ "NOT_ALLOWED": "NOT_ALLOWED"
+ }
+ },
+ "HealthErrorSummary": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "summary_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "category": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "severity": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "summary_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_resource_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_resource_subtype": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_resource_correlation_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "summary_code": {
+ "attr_type": "summary_code"
+ },
+ "category": {
+ "attr_type": "category"
+ },
+ "severity": {
+ "attr_type": "severity"
+ },
+ "summary_message": {
+ "attr_type": "summary_message"
+ },
+ "affected_resource_type": {
+ "attr_type": "affected_resource_type"
+ },
+ "affected_resource_subtype": {
+ "attr_type": "affected_resource_subtype"
+ },
+ "affected_resource_correlation_ids": {
+ "attr_type": "affected_resource_correlation_ids"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVHostDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "mars_agent_version": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplica2012EventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "container_name": {
+ "attr_type": "container_name"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "remote_container_name": {
+ "attr_type": "remote_container_name"
+ },
+ "remote_fabric_name": {
+ "attr_type": "remote_fabric_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplica2012R2EventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "container_name": {
+ "attr_type": "container_name"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "remote_container_name": {
+ "attr_type": "remote_container_name"
+ },
+ "remote_fabric_name": {
+ "attr_type": "remote_fabric_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secondary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_kek_certificate_pfx": {
+ "attr_type": "primary_kek_certificate_pfx"
+ },
+ "secondary_kek_certificate_pfx": {
+ "attr_type": "secondary_kek_certificate_pfx"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureDiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureEnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "hv_host_vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_subnet_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_rdp_on_target_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_v1_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_v2_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks_for_replication": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include_for_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "hv_host_vm_id": {
+ "attr_type": "hv_host_vm_id"
+ },
+ "vm_name": {
+ "attr_type": "vm_name"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "vhd_id": {
+ "attr_type": "vhd_id"
+ },
+ "target_storage_account_id": {
+ "attr_type": "target_storage_account_id"
+ },
+ "target_azure_network_id": {
+ "attr_type": "target_azure_network_id"
+ },
+ "target_azure_subnet_id": {
+ "attr_type": "target_azure_subnet_id"
+ },
+ "enable_rdp_on_target_option": {
+ "attr_type": "enable_rdp_on_target_option"
+ },
+ "target_azure_vm_name": {
+ "attr_type": "target_azure_vm_name"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "target_azure_v1_resource_group_id": {
+ "attr_type": "target_azure_v1_resource_group_id"
+ },
+ "target_azure_v2_resource_group_id": {
+ "attr_type": "target_azure_v2_resource_group_id"
+ },
+ "use_managed_disks": {
+ "attr_type": "use_managed_disks"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "use_managed_disks_for_replication": {
+ "attr_type": "use_managed_disks_for_replication"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disks_to_include_for_managed_disks": {
+ "attr_type": "disks_to_include_for_managed_disks"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "seed_managed_disk_tags": {
+ "attr_type": "seed_managed_disk_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "container_name": {
+ "attr_type": "container_name"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "remote_container_name": {
+ "attr_type": "remote_container_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureFailbackProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "data_sync_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_vm_creation_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_id_for_alternate_recovery": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "data_sync_option": {
+ "attr_type": "data_sync_option"
+ },
+ "recovery_vm_creation_option": {
+ "attr_type": "recovery_vm_creation_option"
+ },
+ "provider_id_for_alternate_recovery": {
+ "attr_type": "provider_id_for_alternate_recovery"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureManagedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "seed_managed_disk_id": {
+ "attr_type": "seed_managed_disk_id"
+ },
+ "replica_disk_type": {
+ "attr_type": "replica_disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzurePlannedFailoverProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secondary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_kek_certificate_pfx": {
+ "attr_type": "primary_kek_certificate_pfx"
+ },
+ "secondary_kek_certificate_pfx": {
+ "attr_type": "secondary_kek_certificate_pfx"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzurePolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_duration_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_interval": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "encryption": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "active_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_duration_in_hours": {
+ "attr_type": "recovery_point_history_duration_in_hours"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "replication_interval": {
+ "attr_type": "replication_interval"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "encryption": {
+ "attr_type": "encryption"
+ },
+ "active_storage_account_id": {
+ "attr_type": "active_storage_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzurePolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_duration": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_interval": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "storage_accounts": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_duration": {
+ "attr_type": "recovery_point_history_duration"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "replication_interval": {
+ "attr_type": "replication_interval"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "storage_accounts": {
+ "attr_type": "storage_accounts"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "azure_vm_disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_storage_account": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_replicated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_recovery_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_source_nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "encryption": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "o_s_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_ram_size_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_cpu_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_rdp_on_target_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "all_available_os_upgrade_configurations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "azure_vm_disk_details": {
+ "attr_type": "azure_vm_disk_details"
+ },
+ "recovery_azure_vm_name": {
+ "attr_type": "recovery_azure_vm_name"
+ },
+ "recovery_azure_vm_size": {
+ "attr_type": "recovery_azure_vm_size"
+ },
+ "recovery_azure_storage_account": {
+ "attr_type": "recovery_azure_storage_account"
+ },
+ "recovery_azure_log_storage_account_id": {
+ "attr_type": "recovery_azure_log_storage_account_id"
+ },
+ "last_replicated_time": {
+ "attr_type": "last_replicated_time"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "initial_replication_details": {
+ "attr_type": "initial_replication_details"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "selected_recovery_azure_network_id": {
+ "attr_type": "selected_recovery_azure_network_id"
+ },
+ "selected_source_nic_id": {
+ "attr_type": "selected_source_nic_id"
+ },
+ "encryption": {
+ "attr_type": "encryption"
+ },
+ "o_s_details": {
+ "attr_type": "o_s_details"
+ },
+ "source_vm_ram_size_in_mb": {
+ "attr_type": "source_vm_ram_size_in_mb"
+ },
+ "source_vm_cpu_count": {
+ "attr_type": "source_vm_cpu_count"
+ },
+ "enable_rdp_on_target_option": {
+ "attr_type": "enable_rdp_on_target_option"
+ },
+ "recovery_azure_resource_group_id": {
+ "attr_type": "recovery_azure_resource_group_id"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "use_managed_disks": {
+ "attr_type": "use_managed_disks"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "last_recovery_point_received": {
+ "attr_type": null
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "seed_managed_disk_tags": {
+ "attr_type": "seed_managed_disk_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "protected_managed_disks": {
+ "attr_type": "protected_managed_disks"
+ },
+ "all_available_os_upgrade_configurations": {
+ "attr_type": "all_available_os_upgrade_configurations"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "hv_host_vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_hd_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "hv_host_vm_id": {
+ "attr_type": "hv_host_vm_id"
+ },
+ "vm_name": {
+ "attr_type": "vm_name"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "v_hd_id": {
+ "attr_type": "v_hd_id"
+ },
+ "storage_account_id": {
+ "attr_type": "storage_account_id"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureRpRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "LATEST": "LATEST",
+ "LATEST_APPLICATION_CONSISTENT": "LATEST_APPLICATION_CONSISTENT",
+ "LATEST_PROCESSED": "LATEST_PROCESSED"
+ }
+ },
+ "HyperVReplicaAzureTestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secondary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_kek_certificate_pfx": {
+ "attr_type": "primary_kek_certificate_pfx"
+ },
+ "secondary_kek_certificate_pfx": {
+ "attr_type": "secondary_kek_certificate_pfx"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureUnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secondary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_kek_certificate_pfx": {
+ "attr_type": "primary_kek_certificate_pfx"
+ },
+ "secondary_kek_certificate_pfx": {
+ "attr_type": "secondary_kek_certificate_pfx"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaAzureUpdateReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_azure_v1_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_v2_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_id_to_disk_encryption_map": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_azure_v1_resource_group_id": {
+ "attr_type": "recovery_azure_v1_resource_group_id"
+ },
+ "recovery_azure_v2_resource_group_id": {
+ "attr_type": "recovery_azure_v2_resource_group_id"
+ },
+ "use_managed_disks": {
+ "attr_type": "use_managed_disks"
+ },
+ "disk_id_to_disk_encryption_map": {
+ "attr_type": "disk_id_to_disk_encryption_map"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBaseEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "remote_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "container_name": {
+ "attr_type": "container_name"
+ },
+ "fabric_name": {
+ "attr_type": "fabric_name"
+ },
+ "remote_container_name": {
+ "attr_type": "remote_container_name"
+ },
+ "remote_fabric_name": {
+ "attr_type": "remote_fabric_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBasePolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compression": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_method": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_import_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_export_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_deletion_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_points": {
+ "attr_type": "recovery_points"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "compression": {
+ "attr_type": "compression"
+ },
+ "initial_replication_method": {
+ "attr_type": "initial_replication_method"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "offline_replication_import_path": {
+ "attr_type": "offline_replication_import_path"
+ },
+ "offline_replication_export_path": {
+ "attr_type": "offline_replication_export_path"
+ },
+ "replication_port": {
+ "attr_type": "replication_port"
+ },
+ "allowed_authentication_type": {
+ "attr_type": "allowed_authentication_type"
+ },
+ "replica_deletion_option": {
+ "attr_type": "replica_deletion_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBaseReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "last_replicated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_m_disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "last_replicated_time": {
+ "attr_type": "last_replicated_time"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "initial_replication_details": {
+ "attr_type": "initial_replication_details"
+ },
+ "v_m_disk_details": {
+ "attr_type": "v_m_disk_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBluePolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replication_frequency_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compression": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_method": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_import_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_export_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_deletion_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "replication_frequency_in_seconds": {
+ "attr_type": "replication_frequency_in_seconds"
+ },
+ "recovery_points": {
+ "attr_type": "recovery_points"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "compression": {
+ "attr_type": "compression"
+ },
+ "initial_replication_method": {
+ "attr_type": "initial_replication_method"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "offline_replication_import_path": {
+ "attr_type": "offline_replication_import_path"
+ },
+ "offline_replication_export_path": {
+ "attr_type": "offline_replication_export_path"
+ },
+ "replication_port": {
+ "attr_type": "replication_port"
+ },
+ "allowed_authentication_type": {
+ "attr_type": "allowed_authentication_type"
+ },
+ "replica_deletion_option": {
+ "attr_type": "replica_deletion_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBluePolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compression": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_method": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_import_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_export_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_deletion": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_frequency_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "replication_frequency_in_seconds": {
+ "attr_type": "replication_frequency_in_seconds"
+ },
+ "recovery_points": {
+ "attr_type": "recovery_points"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "compression": {
+ "attr_type": "compression"
+ },
+ "initial_replication_method": {
+ "attr_type": "initial_replication_method"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "offline_replication_import_path": {
+ "attr_type": "offline_replication_import_path"
+ },
+ "offline_replication_export_path": {
+ "attr_type": "offline_replication_export_path"
+ },
+ "replication_port": {
+ "attr_type": "replication_port"
+ },
+ "allowed_authentication_type": {
+ "attr_type": "allowed_authentication_type"
+ },
+ "replica_deletion": {
+ "attr_type": "replica_deletion"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaBlueReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "last_replicated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_m_disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "last_replicated_time": {
+ "attr_type": "last_replicated_time"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "initial_replication_details": {
+ "attr_type": "initial_replication_details"
+ },
+ "v_m_disk_details": {
+ "attr_type": "v_m_disk_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaPolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compression": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_method": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_import_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_export_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_deletion_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_points": {
+ "attr_type": "recovery_points"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "compression": {
+ "attr_type": "compression"
+ },
+ "initial_replication_method": {
+ "attr_type": "initial_replication_method"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "offline_replication_import_path": {
+ "attr_type": "offline_replication_import_path"
+ },
+ "offline_replication_export_path": {
+ "attr_type": "offline_replication_export_path"
+ },
+ "replication_port": {
+ "attr_type": "replication_port"
+ },
+ "allowed_authentication_type": {
+ "attr_type": "allowed_authentication_type"
+ },
+ "replica_deletion_option": {
+ "attr_type": "replica_deletion_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaPolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compression": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_method": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "online_replication_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_import_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "offline_replication_export_path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_authentication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_deletion": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_points": {
+ "attr_type": "recovery_points"
+ },
+ "application_consistent_snapshot_frequency_in_hours": {
+ "attr_type": "application_consistent_snapshot_frequency_in_hours"
+ },
+ "compression": {
+ "attr_type": "compression"
+ },
+ "initial_replication_method": {
+ "attr_type": "initial_replication_method"
+ },
+ "online_replication_start_time": {
+ "attr_type": "online_replication_start_time"
+ },
+ "offline_replication_import_path": {
+ "attr_type": "offline_replication_import_path"
+ },
+ "offline_replication_export_path": {
+ "attr_type": "offline_replication_export_path"
+ },
+ "replication_port": {
+ "attr_type": "replication_port"
+ },
+ "allowed_authentication_type": {
+ "attr_type": "allowed_authentication_type"
+ },
+ "replica_deletion": {
+ "attr_type": "replica_deletion"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVReplicaReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "last_replicated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_m_disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "last_replicated_time": {
+ "attr_type": "last_replicated_time"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "initial_replication_details": {
+ "attr_type": "initial_replication_details"
+ },
+ "v_m_disk_details": {
+ "attr_type": "v_m_disk_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVSiteDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "hyper_v_hosts": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "hyper_v_hosts": {
+ "attr_type": "hyper_v_hosts"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "HyperVVirtualMachineDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "generation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_physical_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_fibre_channel_adapter": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_shared_vhd": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "hyper_v_host_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "source_item_id": {
+ "attr_type": "source_item_id"
+ },
+ "generation": {
+ "attr_type": "generation"
+ },
+ "os_details": {
+ "attr_type": "os_details"
+ },
+ "disk_details": {
+ "attr_type": "disk_details"
+ },
+ "has_physical_disk": {
+ "attr_type": "has_physical_disk"
+ },
+ "has_fibre_channel_adapter": {
+ "attr_type": "has_fibre_channel_adapter"
+ },
+ "has_shared_vhd": {
+ "attr_type": "has_shared_vhd"
+ },
+ "hyper_v_host_id": {
+ "attr_type": "hyper_v_host_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "IPConfigDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_primary": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_seleted_for_failover": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_public_ip_address_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_lb_backend_address_pool_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_public_ip_address_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_lb_backend_address_pool_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "is_primary": {
+ "attr_type": "is_primary"
+ },
+ "subnet_name": {
+ "attr_type": "subnet_name"
+ },
+ "static_ip_address": {
+ "attr_type": "static_ip_address"
+ },
+ "ip_address_type": {
+ "attr_type": "ip_address_type"
+ },
+ "is_seleted_for_failover": {
+ "attr_type": "is_seleted_for_failover"
+ },
+ "recovery_subnet_name": {
+ "attr_type": "recovery_subnet_name"
+ },
+ "recovery_static_ip_address": {
+ "attr_type": "recovery_static_ip_address"
+ },
+ "recovery_ip_address_type": {
+ "attr_type": "recovery_ip_address_type"
+ },
+ "recovery_public_ip_address_id": {
+ "attr_type": "recovery_public_ip_address_id"
+ },
+ "recovery_lb_backend_address_pool_ids": {
+ "attr_type": "recovery_lb_backend_address_pool_ids"
+ },
+ "tfo_subnet_name": {
+ "attr_type": "tfo_subnet_name"
+ },
+ "tfo_static_ip_address": {
+ "attr_type": "tfo_static_ip_address"
+ },
+ "tfo_public_ip_address_id": {
+ "attr_type": "tfo_public_ip_address_id"
+ },
+ "tfo_lb_backend_address_pool_ids": {
+ "attr_type": "tfo_lb_backend_address_pool_ids"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "IPConfigInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "ip_config_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_primary": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_seleted_for_failover": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_public_ip_address_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_lb_backend_address_pool_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_public_ip_address_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_lb_backend_address_pool_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "ip_config_name": {
+ "attr_type": "ip_config_name"
+ },
+ "is_primary": {
+ "attr_type": "is_primary"
+ },
+ "is_seleted_for_failover": {
+ "attr_type": "is_seleted_for_failover"
+ },
+ "recovery_subnet_name": {
+ "attr_type": "recovery_subnet_name"
+ },
+ "recovery_static_ip_address": {
+ "attr_type": "recovery_static_ip_address"
+ },
+ "recovery_public_ip_address_id": {
+ "attr_type": "recovery_public_ip_address_id"
+ },
+ "recovery_lb_backend_address_pool_ids": {
+ "attr_type": "recovery_lb_backend_address_pool_ids"
+ },
+ "tfo_subnet_name": {
+ "attr_type": "tfo_subnet_name"
+ },
+ "tfo_static_ip_address": {
+ "attr_type": "tfo_static_ip_address"
+ },
+ "tfo_public_ip_address_id": {
+ "attr_type": "tfo_public_ip_address_id"
+ },
+ "tfo_lb_backend_address_pool_ids": {
+ "attr_type": "tfo_lb_backend_address_pool_ids"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "IdentityProviderDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "tenant_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "application_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "audience": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "aad_authority": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "tenant_id": {
+ "attr_type": "tenant_id"
+ },
+ "application_id": {
+ "attr_type": "application_id"
+ },
+ "object_id": {
+ "attr_type": "object_id"
+ },
+ "audience": {
+ "attr_type": "audience"
+ },
+ "aad_authority": {
+ "attr_type": "aad_authority"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "IdentityProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "tenant_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "application_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "object_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "audience": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "aad_authority": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "tenant_id": {
+ "attr_type": "tenant_id"
+ },
+ "application_id": {
+ "attr_type": "application_id"
+ },
+ "object_id": {
+ "attr_type": "object_id"
+ },
+ "audience": {
+ "attr_type": "audience"
+ },
+ "aad_authority": {
+ "attr_type": "aad_authority"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "post_update_reboot_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "agent_update_status": {
+ "attr_type": "agent_update_status"
+ },
+ "post_update_reboot_status": {
+ "attr_type": "post_update_reboot_status"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2ApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2DiskInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2EnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "master_target_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_subnet_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_rdp_on_target_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_v1_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_azure_v2_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "storage_account_id": {
+ "attr_type": "storage_account_id"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "target_azure_network_id": {
+ "attr_type": "target_azure_network_id"
+ },
+ "target_azure_subnet_id": {
+ "attr_type": "target_azure_subnet_id"
+ },
+ "enable_rdp_on_target_option": {
+ "attr_type": "enable_rdp_on_target_option"
+ },
+ "target_azure_vm_name": {
+ "attr_type": "target_azure_vm_name"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "target_azure_v1_resource_group_id": {
+ "attr_type": "target_azure_v1_resource_group_id"
+ },
+ "target_azure_v2_resource_group_id": {
+ "attr_type": "target_azure_v2_resource_group_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "seed_managed_disk_tags": {
+ "attr_type": "seed_managed_disk_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2EventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "event_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "category": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "component": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "corrective_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "summary": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "site_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "event_type": {
+ "attr_type": "event_type"
+ },
+ "category": {
+ "attr_type": "category"
+ },
+ "component": {
+ "attr_type": "component"
+ },
+ "corrective_action": {
+ "attr_type": "corrective_action"
+ },
+ "details": {
+ "attr_type": "details"
+ },
+ "summary": {
+ "attr_type": "summary"
+ },
+ "site_name": {
+ "attr_type": "site_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2ManagedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "seed_managed_disk_id": {
+ "attr_type": "seed_managed_disk_id"
+ },
+ "replica_disk_type": {
+ "attr_type": "replica_disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "target_disk_name": {
+ "attr_type": "target_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2PolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2PolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "multi_vm_sync_status": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2ProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_stage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_error_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_progress_percentage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_duration_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "file_system_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_data_in_mega_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ps_data_in_mega_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_data_in_mega_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_resized": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_processed_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_total_transferred_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_last15_minutes_transferred_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_last_data_transfer_time_utc": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "progress_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "progress_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seconds_to_take_switch_provider": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "disk_name": {
+ "attr_type": "disk_name"
+ },
+ "protection_stage": {
+ "attr_type": "protection_stage"
+ },
+ "health_error_code": {
+ "attr_type": "health_error_code"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "resync_required": {
+ "attr_type": "resync_required"
+ },
+ "resync_progress_percentage": {
+ "attr_type": "resync_progress_percentage"
+ },
+ "resync_duration_in_seconds": {
+ "attr_type": "resync_duration_in_seconds"
+ },
+ "disk_capacity_in_bytes": {
+ "attr_type": "disk_capacity_in_bytes"
+ },
+ "file_system_capacity_in_bytes": {
+ "attr_type": "file_system_capacity_in_bytes"
+ },
+ "source_data_in_mega_bytes": {
+ "attr_type": "source_data_in_mega_bytes"
+ },
+ "ps_data_in_mega_bytes": {
+ "attr_type": "ps_data_in_mega_bytes"
+ },
+ "target_data_in_mega_bytes": {
+ "attr_type": "target_data_in_mega_bytes"
+ },
+ "disk_resized": {
+ "attr_type": "disk_resized"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "resync_processed_bytes": {
+ "attr_type": "resync_processed_bytes"
+ },
+ "resync_total_transferred_bytes": {
+ "attr_type": "resync_total_transferred_bytes"
+ },
+ "resync_last15_minutes_transferred_bytes": {
+ "attr_type": "resync_last15_minutes_transferred_bytes"
+ },
+ "resync_last_data_transfer_time_utc": {
+ "attr_type": "resync_last_data_transfer_time_utc"
+ },
+ "resync_start_time": {
+ "attr_type": "resync_start_time"
+ },
+ "progress_health": {
+ "attr_type": "progress_health"
+ },
+ "progress_status": {
+ "attr_type": "progress_status"
+ },
+ "seconds_to_take_switch_provider": {
+ "attr_type": "seconds_to_take_switch_provider"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2RecoveryPointDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "is_multi_vm_sync_point": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "is_multi_vm_sync_point": {
+ "attr_type": "is_multi_vm_sync_point"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2ReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "infrastructure_vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_center_infrastructure_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_stage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_progress_percentage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compressed_data_rate_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "uncompressed_data_rate_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_agent_update_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_reboot_after_update_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_resized": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "master_target_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_cpu_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_ram_size_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "azure_vm_disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_storage_account": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_recovery_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_tfo_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_source_nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovery_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_rdp_on_target_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "datastores": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "validation_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_update_received_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "firmware_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "azure_vm_generation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_additional_stats_available": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_data_transferred": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_progress_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "switch_provider_blocking_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "switch_provider_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "supported_os_versions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "all_available_os_upgrade_configurations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "infrastructure_vm_id": {
+ "attr_type": "infrastructure_vm_id"
+ },
+ "v_center_infrastructure_id": {
+ "attr_type": "v_center_infrastructure_id"
+ },
+ "protection_stage": {
+ "attr_type": "protection_stage"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "resync_progress_percentage": {
+ "attr_type": "resync_progress_percentage"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "compressed_data_rate_in_mb": {
+ "attr_type": "compressed_data_rate_in_mb"
+ },
+ "uncompressed_data_rate_in_mb": {
+ "attr_type": "uncompressed_data_rate_in_mb"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "is_agent_update_required": {
+ "attr_type": "is_agent_update_required"
+ },
+ "is_reboot_after_update_required": {
+ "attr_type": "is_reboot_after_update_required"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "process_server_name": {
+ "attr_type": "process_server_name"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "disk_resized": {
+ "attr_type": "disk_resized"
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "source_vm_cpu_count": {
+ "attr_type": "source_vm_cpu_count"
+ },
+ "source_vm_ram_size_in_mb": {
+ "attr_type": "source_vm_ram_size_in_mb"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "vhd_name": {
+ "attr_type": "vhd_name"
+ },
+ "os_disk_id": {
+ "attr_type": "os_disk_id"
+ },
+ "azure_vm_disk_details": {
+ "attr_type": "azure_vm_disk_details"
+ },
+ "recovery_azure_vm_name": {
+ "attr_type": "recovery_azure_vm_name"
+ },
+ "recovery_azure_vm_size": {
+ "attr_type": "recovery_azure_vm_size"
+ },
+ "recovery_azure_storage_account": {
+ "attr_type": "recovery_azure_storage_account"
+ },
+ "recovery_azure_log_storage_account_id": {
+ "attr_type": "recovery_azure_log_storage_account_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "selected_recovery_azure_network_id": {
+ "attr_type": "selected_recovery_azure_network_id"
+ },
+ "selected_tfo_azure_network_id": {
+ "attr_type": "selected_tfo_azure_network_id"
+ },
+ "selected_source_nic_id": {
+ "attr_type": "selected_source_nic_id"
+ },
+ "discovery_type": {
+ "attr_type": "discovery_type"
+ },
+ "enable_rdp_on_target_option": {
+ "attr_type": "enable_rdp_on_target_option"
+ },
+ "datastores": {
+ "attr_type": "datastores"
+ },
+ "target_vm_id": {
+ "attr_type": "target_vm_id"
+ },
+ "recovery_azure_resource_group_id": {
+ "attr_type": "recovery_azure_resource_group_id"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "use_managed_disks": {
+ "attr_type": "use_managed_disks"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "validation_errors": {
+ "attr_type": "validation_errors"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "last_update_received_time": {
+ "attr_type": "last_update_received_time"
+ },
+ "replica_id": {
+ "attr_type": "replica_id"
+ },
+ "os_version": {
+ "attr_type": "os_version"
+ },
+ "protected_managed_disks": {
+ "attr_type": "protected_managed_disks"
+ },
+ "last_recovery_point_received": {
+ "attr_type": null
+ },
+ "firmware_type": {
+ "attr_type": "firmware_type"
+ },
+ "azure_vm_generation": {
+ "attr_type": "azure_vm_generation"
+ },
+ "is_additional_stats_available": {
+ "attr_type": "is_additional_stats_available"
+ },
+ "total_data_transferred": {
+ "attr_type": "total_data_transferred"
+ },
+ "total_progress_health": {
+ "attr_type": "total_progress_health"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "seed_managed_disk_tags": {
+ "attr_type": "seed_managed_disk_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "switch_provider_blocking_error_details": {
+ "attr_type": "switch_provider_blocking_error_details"
+ },
+ "switch_provider_details": {
+ "attr_type": "switch_provider_details"
+ },
+ "supported_os_versions": {
+ "attr_type": "supported_os_versions"
+ },
+ "all_available_os_upgrade_configurations": {
+ "attr_type": "all_available_os_upgrade_configurations"
+ },
+ "os_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2ReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "master_target_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "storage_account_id": {
+ "attr_type": "storage_account_id"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2SwitchProviderBlockingErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": null
+ },
+ "error_message": {
+ "attr_type": null
+ },
+ "possible_causes": {
+ "attr_type": null
+ },
+ "recommended_action": {
+ "attr_type": null
+ },
+ "error_message_parameters": {
+ "attr_type": null
+ },
+ "error_tags": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2SwitchProviderDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_vault_id": {
+ "attr_type": null
+ },
+ "target_resource_id": {
+ "attr_type": null
+ },
+ "target_fabric_id": {
+ "attr_type": null
+ },
+ "target_appliance_id": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2SwitchProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_vault_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_fabric_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_appliance_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "target_vault_id": {
+ "attr_type": "target_vault_id"
+ },
+ "target_fabric_id": {
+ "attr_type": "target_fabric_id"
+ },
+ "target_appliance_id": {
+ "attr_type": "target_appliance_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2TestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2UnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageAzureV2UpdateReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_azure_v1_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_v2_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "use_managed_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_managed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_azure_v1_resource_group_id": {
+ "attr_type": "recovery_azure_v1_resource_group_id"
+ },
+ "recovery_azure_v2_resource_group_id": {
+ "attr_type": "recovery_azure_v2_resource_group_id"
+ },
+ "use_managed_disks": {
+ "attr_type": "use_managed_disks"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "target_managed_disk_tags": {
+ "attr_type": "target_managed_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageBasePolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageDisableProtectionProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replica_vm_deletion_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "replica_vm_deletion_status": {
+ "attr_type": "replica_vm_deletion_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_size_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_configuration": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "volume_list": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "disk_name": {
+ "attr_type": "disk_name"
+ },
+ "disk_size_in_mb": {
+ "attr_type": "disk_size_in_mb"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_configuration": {
+ "attr_type": "disk_configuration"
+ },
+ "volume_list": {
+ "attr_type": "volume_list"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageDiskExclusionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "volume_options": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_signature_options": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "volume_options": {
+ "attr_type": "volume_options"
+ },
+ "disk_signature_options": {
+ "attr_type": "disk_signature_options"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageDiskSignatureExclusionOptions": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_signature": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_signature": {
+ "attr_type": "disk_signature"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageEnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "master_target_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "retention_drive": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "vm_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "datastore_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_exclusion_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vm_friendly_name": {
+ "attr_type": "vm_friendly_name"
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "retention_drive": {
+ "attr_type": "retention_drive"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "datastore_name": {
+ "attr_type": "datastore_name"
+ },
+ "disk_exclusion_input": {
+ "attr_type": "disk_exclusion_input"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageFabricSwitchProviderBlockingErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": null
+ },
+ "error_message": {
+ "attr_type": null
+ },
+ "possible_causes": {
+ "attr_type": null
+ },
+ "recommended_action": {
+ "attr_type": null
+ },
+ "error_message_parameters": {
+ "attr_type": null
+ },
+ "error_tags": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMagePolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMagePolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "multi_vm_sync_status": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_threshold_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_threshold_in_minutes": {
+ "attr_type": "recovery_point_threshold_in_minutes"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_stage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_error_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_required": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_progress_percentage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_duration_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "file_system_capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_data_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ps_data_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_data_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_resized": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_processed_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_total_transferred_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_last15_minutes_transferred_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_last_data_transfer_time_utc": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "progress_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "progress_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "disk_name": {
+ "attr_type": "disk_name"
+ },
+ "protection_stage": {
+ "attr_type": "protection_stage"
+ },
+ "health_error_code": {
+ "attr_type": "health_error_code"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "resync_required": {
+ "attr_type": "resync_required"
+ },
+ "resync_progress_percentage": {
+ "attr_type": "resync_progress_percentage"
+ },
+ "resync_duration_in_seconds": {
+ "attr_type": "resync_duration_in_seconds"
+ },
+ "disk_capacity_in_bytes": {
+ "attr_type": "disk_capacity_in_bytes"
+ },
+ "file_system_capacity_in_bytes": {
+ "attr_type": "file_system_capacity_in_bytes"
+ },
+ "source_data_in_mb": {
+ "attr_type": "source_data_in_mb"
+ },
+ "ps_data_in_mb": {
+ "attr_type": "ps_data_in_mb"
+ },
+ "target_data_in_mb": {
+ "attr_type": "target_data_in_mb"
+ },
+ "disk_resized": {
+ "attr_type": "disk_resized"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "resync_processed_bytes": {
+ "attr_type": "resync_processed_bytes"
+ },
+ "resync_total_transferred_bytes": {
+ "attr_type": "resync_total_transferred_bytes"
+ },
+ "resync_last15_minutes_transferred_bytes": {
+ "attr_type": "resync_last15_minutes_transferred_bytes"
+ },
+ "resync_last_data_transfer_time_utc": {
+ "attr_type": "resync_last_data_transfer_time_utc"
+ },
+ "resync_start_time": {
+ "attr_type": "resync_start_time"
+ },
+ "progress_health": {
+ "attr_type": "progress_health"
+ },
+ "progress_status": {
+ "attr_type": "progress_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmAgentUpgradeBlockingErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": null
+ },
+ "error_message": {
+ "attr_type": null
+ },
+ "possible_causes": {
+ "attr_type": null
+ },
+ "recommended_action": {
+ "attr_type": null
+ },
+ "error_message_parameters": {
+ "attr_type": null
+ },
+ "error_tags": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmApplianceDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "fabric_arm_id": {
+ "attr_type": null
+ },
+ "process_server": {
+ "attr_type": null
+ },
+ "rcm_proxy": {
+ "attr_type": null
+ },
+ "push_installer": {
+ "attr_type": null
+ },
+ "replication_agent": {
+ "attr_type": null
+ },
+ "reprotect_agent": {
+ "attr_type": null
+ },
+ "mars_agent": {
+ "attr_type": null
+ },
+ "dra": {
+ "attr_type": null
+ },
+ "switch_provider_blocking_error_details": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmApplianceSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "appliances": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmApplyRecoveryPointInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmDiscoveredProtectedVmDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "v_center_id": {
+ "attr_type": null
+ },
+ "v_center_fqdn": {
+ "attr_type": null
+ },
+ "datastores": {
+ "attr_type": null
+ },
+ "ip_addresses": {
+ "attr_type": null
+ },
+ "vmware_tools_status": {
+ "attr_type": null
+ },
+ "power_status": {
+ "attr_type": null
+ },
+ "vm_fqdn": {
+ "attr_type": null
+ },
+ "os_name": {
+ "attr_type": null
+ },
+ "created_timestamp": {
+ "attr_type": null
+ },
+ "updated_timestamp": {
+ "attr_type": null
+ },
+ "is_deleted": {
+ "attr_type": null
+ },
+ "last_discovery_time_in_utc": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmDiskInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmDisksDefaultInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "log_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmEnableProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_discovery_machine_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_default": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "fabric_discovery_machine_id": {
+ "attr_type": "fabric_discovery_machine_id"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "disks_default": {
+ "attr_type": "disks_default"
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "protected_item_name": {
+ "attr_type": null
+ },
+ "vm_name": {
+ "attr_type": null
+ },
+ "latest_agent_version": {
+ "attr_type": null
+ },
+ "job_id": {
+ "attr_type": null
+ },
+ "fabric_name": {
+ "attr_type": null
+ },
+ "appliance_name": {
+ "attr_type": null
+ },
+ "server_type": {
+ "attr_type": null
+ },
+ "component_display_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFabricCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vmware_site_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "physical_site_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "source_agent_identity": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_site_id": {
+ "attr_type": "vmware_site_id"
+ },
+ "physical_site_id": {
+ "attr_type": "physical_site_id"
+ },
+ "source_agent_identity": {
+ "attr_type": "source_agent_identity"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFabricSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source_agent_identity_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_site_id": {
+ "attr_type": null
+ },
+ "physical_site_id": {
+ "attr_type": null
+ },
+ "service_endpoint": {
+ "attr_type": null
+ },
+ "service_resource_id": {
+ "attr_type": null
+ },
+ "service_container_id": {
+ "attr_type": null
+ },
+ "data_plane_uri": {
+ "attr_type": null
+ },
+ "control_plane_uri": {
+ "attr_type": null
+ },
+ "source_agent_identity_details": {
+ "attr_type": "source_agent_identity_details"
+ },
+ "process_servers": {
+ "attr_type": null
+ },
+ "rcm_proxies": {
+ "attr_type": null
+ },
+ "push_installers": {
+ "attr_type": null
+ },
+ "replication_agents": {
+ "attr_type": null
+ },
+ "reprotect_agents": {
+ "attr_type": null
+ },
+ "mars_agents": {
+ "attr_type": null
+ },
+ "dras": {
+ "attr_type": null
+ },
+ "agent_details": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFabricSwitchProviderBlockingErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": null
+ },
+ "error_message": {
+ "attr_type": null
+ },
+ "possible_causes": {
+ "attr_type": null
+ },
+ "recommended_action": {
+ "attr_type": null
+ },
+ "error_message_parameters": {
+ "attr_type": null
+ },
+ "error_tags": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackDiscoveredProtectedVmDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "v_center_id": {
+ "attr_type": null
+ },
+ "v_center_fqdn": {
+ "attr_type": null
+ },
+ "datastores": {
+ "attr_type": null
+ },
+ "ip_addresses": {
+ "attr_type": null
+ },
+ "vmware_tools_status": {
+ "attr_type": null
+ },
+ "power_status": {
+ "attr_type": null
+ },
+ "vm_fqdn": {
+ "attr_type": null
+ },
+ "os_name": {
+ "attr_type": null
+ },
+ "created_timestamp": {
+ "attr_type": null
+ },
+ "updated_timestamp": {
+ "attr_type": null
+ },
+ "is_deleted": {
+ "attr_type": null
+ },
+ "last_discovery_time_in_utc": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "protected_item_name": {
+ "attr_type": null
+ },
+ "vm_name": {
+ "attr_type": null
+ },
+ "appliance_name": {
+ "attr_type": null
+ },
+ "server_type": {
+ "attr_type": null
+ },
+ "component_display_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackMobilityAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "version": {
+ "attr_type": null
+ },
+ "latest_version": {
+ "attr_type": null
+ },
+ "driver_version": {
+ "attr_type": null
+ },
+ "latest_upgradable_version_without_reboot": {
+ "attr_type": null
+ },
+ "agent_version_expiry_date": {
+ "attr_type": null
+ },
+ "driver_version_expiry_date": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "reasons_blocking_upgrade": {
+ "attr_type": null
+ },
+ "is_upgradeable": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackNicDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "mac_address": {
+ "attr_type": null
+ },
+ "network_name": {
+ "attr_type": null
+ },
+ "adapter_type": {
+ "attr_type": null
+ },
+ "source_ip_address": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackPlannedFailoverProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackPolicyCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackPolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "ir_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": null
+ },
+ "disk_name": {
+ "attr_type": null
+ },
+ "is_os_disk": {
+ "attr_type": null
+ },
+ "capacity_in_bytes": {
+ "attr_type": null
+ },
+ "disk_uuid": {
+ "attr_type": null
+ },
+ "data_pending_in_log_data_store_in_mb": {
+ "attr_type": null
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "attr_type": null
+ },
+ "is_initial_replication_complete": {
+ "attr_type": null
+ },
+ "ir_details": {
+ "attr_type": "ir_details"
+ },
+ "resync_details": {
+ "attr_type": "resync_details"
+ },
+ "last_sync_time": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "APPLICATION_CONSISTENT": "APPLICATION_CONSISTENT",
+ "CRASH_CONSISTENT": "CRASH_CONSISTENT"
+ }
+ },
+ "InMageRcmFailbackReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mobility_agent_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovered_vm_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "internal_identifier": {
+ "attr_type": null
+ },
+ "azure_virtual_machine_id": {
+ "attr_type": null
+ },
+ "multi_vm_group_name": {
+ "attr_type": null
+ },
+ "reprotect_agent_id": {
+ "attr_type": null
+ },
+ "reprotect_agent_name": {
+ "attr_type": null
+ },
+ "os_type": {
+ "attr_type": null
+ },
+ "log_storage_account_id": {
+ "attr_type": null
+ },
+ "targetv_center_id": {
+ "attr_type": null
+ },
+ "target_data_store_name": {
+ "attr_type": null
+ },
+ "target_vm_name": {
+ "attr_type": null
+ },
+ "initial_replication_progress_percentage": {
+ "attr_type": null
+ },
+ "initial_replication_processed_bytes": {
+ "attr_type": null
+ },
+ "initial_replication_transferred_bytes": {
+ "attr_type": null
+ },
+ "initial_replication_progress_health": {
+ "attr_type": null
+ },
+ "resync_progress_percentage": {
+ "attr_type": null
+ },
+ "resync_processed_bytes": {
+ "attr_type": null
+ },
+ "resync_transferred_bytes": {
+ "attr_type": null
+ },
+ "resync_progress_health": {
+ "attr_type": null
+ },
+ "resync_required": {
+ "attr_type": null
+ },
+ "resync_state": {
+ "attr_type": null
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "mobility_agent_details": {
+ "attr_type": "mobility_agent_details"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "last_planned_failover_start_time": {
+ "attr_type": null
+ },
+ "last_planned_failover_status": {
+ "attr_type": null
+ },
+ "discovered_vm_details": {
+ "attr_type": "discovered_vm_details"
+ },
+ "last_used_policy_id": {
+ "attr_type": null
+ },
+ "last_used_policy_friendly_name": {
+ "attr_type": null
+ },
+ "is_agent_registration_successful_after_failover": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "process_server_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmFailbackSyncDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "progress_health": {
+ "attr_type": null
+ },
+ "transferred_bytes": {
+ "attr_type": null
+ },
+ "last15_minutes_transferred_bytes": {
+ "attr_type": null
+ },
+ "last_data_transfer_time_utc": {
+ "attr_type": null
+ },
+ "processed_bytes": {
+ "attr_type": null
+ },
+ "start_time": {
+ "attr_type": null
+ },
+ "last_refresh_time": {
+ "attr_type": null
+ },
+ "progress_percentage": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmLastAgentUpgradeErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": null
+ },
+ "error_message": {
+ "attr_type": null
+ },
+ "possible_causes": {
+ "attr_type": null
+ },
+ "recommended_action": {
+ "attr_type": null
+ },
+ "error_message_parameters": {
+ "attr_type": null
+ },
+ "error_tags": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmMobilityAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "version": {
+ "attr_type": null
+ },
+ "latest_version": {
+ "attr_type": null
+ },
+ "latest_agent_release_date": {
+ "attr_type": null
+ },
+ "driver_version": {
+ "attr_type": null
+ },
+ "latest_upgradable_version_without_reboot": {
+ "attr_type": null
+ },
+ "agent_version_expiry_date": {
+ "attr_type": null
+ },
+ "driver_version_expiry_date": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "reasons_blocking_upgrade": {
+ "attr_type": null
+ },
+ "is_upgradeable": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmNicDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "is_primary_nic": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_selected_for_failover": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": null
+ },
+ "is_primary_nic": {
+ "attr_type": "is_primary_nic"
+ },
+ "is_selected_for_failover": {
+ "attr_type": "is_selected_for_failover"
+ },
+ "source_ip_address": {
+ "attr_type": null
+ },
+ "source_ip_address_type": {
+ "attr_type": null
+ },
+ "source_network_id": {
+ "attr_type": null
+ },
+ "source_subnet_name": {
+ "attr_type": null
+ },
+ "target_ip_address": {
+ "attr_type": "target_ip_address"
+ },
+ "target_ip_address_type": {
+ "attr_type": "target_ip_address_type"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "test_ip_address": {
+ "attr_type": "test_ip_address"
+ },
+ "test_ip_address_type": {
+ "attr_type": "test_ip_address_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmNicInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "nic_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "is_primary_nic": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "is_selected_for_failover": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": "nic_id"
+ },
+ "is_primary_nic": {
+ "attr_type": "is_primary_nic"
+ },
+ "is_selected_for_failover": {
+ "attr_type": "is_selected_for_failover"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "target_static_ip_address": {
+ "attr_type": "target_static_ip_address"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "test_static_ip_address": {
+ "attr_type": "test_static_ip_address"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmPolicyCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_multi_vm_sync": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_in_minutes": {
+ "attr_type": "recovery_point_history_in_minutes"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "enable_multi_vm_sync": {
+ "attr_type": "enable_multi_vm_sync"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmPolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_multi_vm_sync": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_in_minutes": {
+ "attr_type": "recovery_point_history_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "enable_multi_vm_sync": {
+ "attr_type": "enable_multi_vm_sync"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ir_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": null
+ },
+ "disk_name": {
+ "attr_type": null
+ },
+ "is_os_disk": {
+ "attr_type": null
+ },
+ "capacity_in_bytes": {
+ "attr_type": null
+ },
+ "log_storage_account_id": {
+ "attr_type": null
+ },
+ "disk_encryption_set_id": {
+ "attr_type": null
+ },
+ "seed_managed_disk_id": {
+ "attr_type": null
+ },
+ "seed_blob_uri": {
+ "attr_type": null
+ },
+ "target_managed_disk_id": {
+ "attr_type": null
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "data_pending_in_log_data_store_in_mb": {
+ "attr_type": null
+ },
+ "data_pending_at_source_agent_in_mb": {
+ "attr_type": null
+ },
+ "is_initial_replication_complete": {
+ "attr_type": null
+ },
+ "ir_details": {
+ "attr_type": "ir_details"
+ },
+ "resync_details": {
+ "attr_type": "resync_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmProtectionContainerMappingDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "enable_agent_auto_upgrade": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmRecoveryPointDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "is_multi_vm_sync_point": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mobility_agent_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_agent_upgrade_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_upgrade_blocking_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovered_vm_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "internal_identifier": {
+ "attr_type": null
+ },
+ "fabric_discovery_machine_id": {
+ "attr_type": null
+ },
+ "multi_vm_group_name": {
+ "attr_type": null
+ },
+ "discovery_type": {
+ "attr_type": null
+ },
+ "process_server_id": {
+ "attr_type": null
+ },
+ "processor_core_count": {
+ "attr_type": null
+ },
+ "allocated_memory_in_mb": {
+ "attr_type": null
+ },
+ "process_server_name": {
+ "attr_type": null
+ },
+ "run_as_account_id": {
+ "attr_type": null
+ },
+ "os_type": {
+ "attr_type": null
+ },
+ "firmware_type": {
+ "attr_type": null
+ },
+ "primary_nic_ip_address": {
+ "attr_type": null
+ },
+ "target_generation": {
+ "attr_type": null
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "storage_account_id": {
+ "attr_type": null
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_location": {
+ "attr_type": "target_location"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "failover_recovery_point_id": {
+ "attr_type": null
+ },
+ "last_recovery_point_received": {
+ "attr_type": null
+ },
+ "last_rpo_in_seconds": {
+ "attr_type": null
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": null
+ },
+ "last_recovery_point_id": {
+ "attr_type": null
+ },
+ "initial_replication_progress_percentage": {
+ "attr_type": null
+ },
+ "initial_replication_processed_bytes": {
+ "attr_type": null
+ },
+ "initial_replication_transferred_bytes": {
+ "attr_type": null
+ },
+ "initial_replication_progress_health": {
+ "attr_type": null
+ },
+ "resync_progress_percentage": {
+ "attr_type": null
+ },
+ "resync_processed_bytes": {
+ "attr_type": null
+ },
+ "resync_transferred_bytes": {
+ "attr_type": null
+ },
+ "resync_progress_health": {
+ "attr_type": null
+ },
+ "resync_required": {
+ "attr_type": null
+ },
+ "resync_state": {
+ "attr_type": null
+ },
+ "agent_upgrade_state": {
+ "attr_type": null
+ },
+ "last_agent_upgrade_type": {
+ "attr_type": null
+ },
+ "agent_upgrade_job_id": {
+ "attr_type": null
+ },
+ "agent_upgrade_attempt_to_version": {
+ "attr_type": null
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "is_last_upgrade_successful": {
+ "attr_type": null
+ },
+ "is_agent_registration_successful_after_failover": {
+ "attr_type": null
+ },
+ "mobility_agent_details": {
+ "attr_type": "mobility_agent_details"
+ },
+ "last_agent_upgrade_error_details": {
+ "attr_type": "last_agent_upgrade_error_details"
+ },
+ "agent_upgrade_blocking_error_details": {
+ "attr_type": "agent_upgrade_blocking_error_details"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "discovered_vm_details": {
+ "attr_type": "discovered_vm_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_agent_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "datastore_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "reprotect_agent_id": {
+ "attr_type": "reprotect_agent_id"
+ },
+ "datastore_name": {
+ "attr_type": "datastore_name"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmSyncDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "progress_health": {
+ "attr_type": null
+ },
+ "transferred_bytes": {
+ "attr_type": null
+ },
+ "last15_minutes_transferred_bytes": {
+ "attr_type": null
+ },
+ "last_data_transfer_time_utc": {
+ "attr_type": null
+ },
+ "processed_bytes": {
+ "attr_type": null
+ },
+ "start_time": {
+ "attr_type": null
+ },
+ "last_refresh_time": {
+ "attr_type": null
+ },
+ "progress_percentage": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmTestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "network_id": {
+ "attr_type": "network_id"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmUnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "perform_shutdown": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "perform_shutdown": {
+ "attr_type": "perform_shutdown"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmUpdateApplianceForReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmUpdateContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "enable_agent_auto_upgrade": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "enable_agent_auto_upgrade": {
+ "attr_type": "enable_agent_auto_upgrade"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageRcmUpdateReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "active_site_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_cpu_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_vm_ram_size_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_stage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resync_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "retention_window_start": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "retention_window_end": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "compressed_data_rate_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "uncompressed_data_rate_in_mb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rpo_in_seconds": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "master_target_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "consistency_points": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_resized": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "reboot_after_update_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_center_infrastructure_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "infrastructure_vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovery_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "azure_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "datastores": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "validation_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_rpo_calculated_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_update_received_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_additional_stats_available": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_data_transferred": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_progress_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "active_site_type": {
+ "attr_type": "active_site_type"
+ },
+ "source_vm_cpu_count": {
+ "attr_type": "source_vm_cpu_count"
+ },
+ "source_vm_ram_size_in_mb": {
+ "attr_type": "source_vm_ram_size_in_mb"
+ },
+ "os_details": {
+ "attr_type": "os_details"
+ },
+ "protection_stage": {
+ "attr_type": "protection_stage"
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "vm_protection_state": {
+ "attr_type": "vm_protection_state"
+ },
+ "vm_protection_state_description": {
+ "attr_type": "vm_protection_state_description"
+ },
+ "resync_details": {
+ "attr_type": "resync_details"
+ },
+ "retention_window_start": {
+ "attr_type": "retention_window_start"
+ },
+ "retention_window_end": {
+ "attr_type": "retention_window_end"
+ },
+ "compressed_data_rate_in_mb": {
+ "attr_type": "compressed_data_rate_in_mb"
+ },
+ "uncompressed_data_rate_in_mb": {
+ "attr_type": "uncompressed_data_rate_in_mb"
+ },
+ "rpo_in_seconds": {
+ "attr_type": "rpo_in_seconds"
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "consistency_points": {
+ "attr_type": "consistency_points"
+ },
+ "disk_resized": {
+ "attr_type": "disk_resized"
+ },
+ "reboot_after_update_status": {
+ "attr_type": "reboot_after_update_status"
+ },
+ "multi_vm_group_id": {
+ "attr_type": "multi_vm_group_id"
+ },
+ "multi_vm_group_name": {
+ "attr_type": "multi_vm_group_name"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "agent_details": {
+ "attr_type": "agent_details"
+ },
+ "v_center_infrastructure_id": {
+ "attr_type": "v_center_infrastructure_id"
+ },
+ "infrastructure_vm_id": {
+ "attr_type": "infrastructure_vm_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "discovery_type": {
+ "attr_type": "discovery_type"
+ },
+ "azure_storage_account_id": {
+ "attr_type": "azure_storage_account_id"
+ },
+ "datastores": {
+ "attr_type": "datastores"
+ },
+ "validation_errors": {
+ "attr_type": "validation_errors"
+ },
+ "last_rpo_calculated_time": {
+ "attr_type": "last_rpo_calculated_time"
+ },
+ "last_update_received_time": {
+ "attr_type": "last_update_received_time"
+ },
+ "replica_id": {
+ "attr_type": "replica_id"
+ },
+ "os_version": {
+ "attr_type": "os_version"
+ },
+ "is_additional_stats_available": {
+ "attr_type": "is_additional_stats_available"
+ },
+ "total_data_transferred": {
+ "attr_type": "total_data_transferred"
+ },
+ "total_progress_health": {
+ "attr_type": "total_progress_health"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageReprotectInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "master_target_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "retention_drive": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "profile_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "datastore_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_exclusion_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "master_target_id": {
+ "attr_type": "master_target_id"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "retention_drive": {
+ "attr_type": "retention_drive"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "datastore_name": {
+ "attr_type": "datastore_name"
+ },
+ "disk_exclusion_input": {
+ "attr_type": "disk_exclusion_input"
+ },
+ "profile_id": {
+ "attr_type": "profile_id"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageTestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageUnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InMageV2RpRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "LATEST": "LATEST",
+ "LATEST_APPLICATION_CONSISTENT": "LATEST_APPLICATION_CONSISTENT",
+ "LATEST_CRASH_CONSISTENT": "LATEST_CRASH_CONSISTENT",
+ "LATEST_PROCESSED": "LATEST_PROCESSED"
+ }
+ },
+ "InMageVolumeExclusionOptions": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "volume_label": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "only_exclude_if_single_volume": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "volume_label": {
+ "attr_type": "volume_label"
+ },
+ "only_exclude_if_single_volume": {
+ "attr_type": "only_exclude_if_single_volume"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InconsistentVmDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cloud_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "vm_name": {
+ "attr_type": "vm_name"
+ },
+ "cloud_name": {
+ "attr_type": "cloud_name"
+ },
+ "details": {
+ "attr_type": "details"
+ },
+ "error_ids": {
+ "attr_type": "error_ids"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InitialReplicationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "initial_replication_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "initial_replication_progress_percentage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "initial_replication_type": {
+ "attr_type": "initial_replication_type"
+ },
+ "initial_replication_progress_percentage": {
+ "attr_type": "initial_replication_progress_percentage"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InlineWorkflowTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "child_tasks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "workflow_ids": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "workflow_ids": {
+ "attr_type": "workflow_ids"
+ },
+ "child_tasks": {
+ "attr_type": "child_tasks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InnerHealthError": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "error_source": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_level": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_category": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "summary_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "possible_causes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recommended_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "creation_time_utc": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_provider_error_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "entity_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "customer_resolvability": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_source": {
+ "attr_type": "error_source"
+ },
+ "error_type": {
+ "attr_type": "error_type"
+ },
+ "error_level": {
+ "attr_type": "error_level"
+ },
+ "error_category": {
+ "attr_type": "error_category"
+ },
+ "error_code": {
+ "attr_type": "error_code"
+ },
+ "summary_message": {
+ "attr_type": "summary_message"
+ },
+ "error_message": {
+ "attr_type": "error_message"
+ },
+ "possible_causes": {
+ "attr_type": "possible_causes"
+ },
+ "recommended_action": {
+ "attr_type": "recommended_action"
+ },
+ "creation_time_utc": {
+ "attr_type": "creation_time_utc"
+ },
+ "recovery_provider_error_message": {
+ "attr_type": "recovery_provider_error_message"
+ },
+ "entity_id": {
+ "attr_type": "entity_id"
+ },
+ "error_id": {
+ "attr_type": "error_id"
+ },
+ "customer_resolvability": {
+ "attr_type": "customer_resolvability"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "InputEndpoint": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "endpoint_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "private_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "public_port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protocol": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "endpoint_name": {
+ "attr_type": "endpoint_name"
+ },
+ "private_port": {
+ "attr_type": "private_port"
+ },
+ "public_port": {
+ "attr_type": "public_port"
+ },
+ "protocol": {
+ "attr_type": "protocol"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "Job": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobEntity": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_object_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_scenario_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "job_id": {
+ "attr_type": "job_id"
+ },
+ "job_friendly_name": {
+ "attr_type": "job_friendly_name"
+ },
+ "target_object_id": {
+ "attr_type": "target_object_id"
+ },
+ "target_object_name": {
+ "attr_type": "target_object_name"
+ },
+ "target_instance_type": {
+ "attr_type": "target_instance_type"
+ },
+ "job_scenario_name": {
+ "attr_type": "job_scenario_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobErrorDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "service_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_level": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "creation_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "task_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "service_error_details": {
+ "attr_type": "service_error_details"
+ },
+ "provider_error_details": {
+ "attr_type": "provider_error_details"
+ },
+ "error_level": {
+ "attr_type": "error_level"
+ },
+ "creation_time": {
+ "attr_type": "creation_time"
+ },
+ "task_id": {
+ "attr_type": "task_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "activity_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "scenario_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tasks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "end_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_actions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_object_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "activity_id": {
+ "attr_type": "activity_id"
+ },
+ "scenario_name": {
+ "attr_type": "scenario_name"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "state": {
+ "attr_type": "state"
+ },
+ "state_description": {
+ "attr_type": "state_description"
+ },
+ "tasks": {
+ "attr_type": "tasks"
+ },
+ "errors": {
+ "attr_type": "errors"
+ },
+ "start_time": {
+ "attr_type": "start_time"
+ },
+ "end_time": {
+ "attr_type": "end_time"
+ },
+ "allowed_actions": {
+ "attr_type": "allowed_actions"
+ },
+ "target_object_id": {
+ "attr_type": "target_object_id"
+ },
+ "target_object_name": {
+ "attr_type": "target_object_name"
+ },
+ "target_instance_type": {
+ "attr_type": "target_instance_type"
+ },
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "start_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "end_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_types": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_output_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "timezone_offset": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "start_time": {
+ "attr_type": "start_time"
+ },
+ "end_time": {
+ "attr_type": "end_time"
+ },
+ "fabric_id": {
+ "attr_type": "fabric_id"
+ },
+ "affected_object_types": {
+ "attr_type": "affected_object_types"
+ },
+ "job_status": {
+ "attr_type": "job_status"
+ },
+ "job_output_type": {
+ "attr_type": "job_output_type"
+ },
+ "job_name": {
+ "attr_type": "job_name"
+ },
+ "timezone_offset": {
+ "attr_type": "timezone_offset"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobStatusEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "job_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "affected_object_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "job_id": {
+ "attr_type": "job_id"
+ },
+ "job_friendly_name": {
+ "attr_type": "job_friendly_name"
+ },
+ "job_status": {
+ "attr_type": "job_status"
+ },
+ "affected_object_type": {
+ "attr_type": "affected_object_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "JobTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_task": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "job_task": {
+ "attr_type": "job_task"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "KeyEncryptionKeyInfo": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_vault_resource_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "key_identifier": {
+ "attr_type": "key_identifier"
+ },
+ "key_vault_resource_arm_id": {
+ "attr_type": "key_vault_resource_arm_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "LicenseType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NOT_SPECIFIED": "NOT_SPECIFIED",
+ "NO_LICENSE_TYPE": "NO_LICENSE_TYPE",
+ "WINDOWS_SERVER": "WINDOWS_SERVER"
+ }
+ },
+ "LogicalNetwork": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "LogicalNetworkCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "LogicalNetworkProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_virtualization_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "logical_network_usage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "logical_network_definitions_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "network_virtualization_status": {
+ "attr_type": "network_virtualization_status"
+ },
+ "logical_network_usage": {
+ "attr_type": "logical_network_usage"
+ },
+ "logical_network_definitions_status": {
+ "attr_type": "logical_network_definitions_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ManualActionTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "instructions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "observation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "instructions": {
+ "attr_type": "instructions"
+ },
+ "observation": {
+ "attr_type": "observation"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MarsAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MasterTargetServer": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "version_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "retention_volumes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_stores": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "validation_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mars_agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mars_agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mars_agent_version_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": "id"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "version_status": {
+ "attr_type": "version_status"
+ },
+ "retention_volumes": {
+ "attr_type": "retention_volumes"
+ },
+ "data_stores": {
+ "attr_type": "data_stores"
+ },
+ "validation_errors": {
+ "attr_type": "validation_errors"
+ },
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "disk_count": {
+ "attr_type": "disk_count"
+ },
+ "os_version": {
+ "attr_type": "os_version"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "mars_agent_version": {
+ "attr_type": "mars_agent_version"
+ },
+ "mars_agent_expiry_date": {
+ "attr_type": "mars_agent_expiry_date"
+ },
+ "agent_version_details": {
+ "attr_type": "agent_version_details"
+ },
+ "mars_agent_version_details": {
+ "attr_type": "mars_agent_version_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrateInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrateInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrateProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationItem": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationItemCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationItemOperation": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DISABLE_MIGRATION": "DISABLE_MIGRATION",
+ "MIGRATE": "MIGRATE",
+ "PAUSE_REPLICATION": "PAUSE_REPLICATION",
+ "RESUME_REPLICATION": "RESUME_REPLICATION",
+ "START_RESYNC": "START_RESYNC",
+ "TEST_MIGRATE": "TEST_MIGRATE",
+ "TEST_MIGRATE_CLEANUP": "TEST_MIGRATE_CLEANUP"
+ }
+ },
+ "MigrationItemProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "machine_name": {
+ "attr_type": null
+ },
+ "policy_id": {
+ "attr_type": null
+ },
+ "policy_friendly_name": {
+ "attr_type": null
+ },
+ "recovery_services_provider_id": {
+ "attr_type": null
+ },
+ "replication_status": {
+ "attr_type": null
+ },
+ "migration_state": {
+ "attr_type": null
+ },
+ "migration_state_description": {
+ "attr_type": null
+ },
+ "last_test_migration_time": {
+ "attr_type": null
+ },
+ "last_test_migration_status": {
+ "attr_type": null
+ },
+ "last_migration_time": {
+ "attr_type": null
+ },
+ "last_migration_status": {
+ "attr_type": null
+ },
+ "test_migrate_state": {
+ "attr_type": null
+ },
+ "test_migrate_state_description": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "allowed_operations": {
+ "attr_type": null
+ },
+ "current_job": {
+ "attr_type": null
+ },
+ "critical_job_history": {
+ "attr_type": null
+ },
+ "event_correlation_id": {
+ "attr_type": null
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationItemsQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_container_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "source_fabric_name": {
+ "attr_type": "source_fabric_name"
+ },
+ "source_container_name": {
+ "attr_type": "source_container_name"
+ },
+ "instance_type": {
+ "attr_type": "instance_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationProviderSpecificSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationRecoveryPoint": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationRecoveryPointCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationRecoveryPointProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_point_time": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MigrationRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "APPLICATION_CONSISTENT": "APPLICATION_CONSISTENT",
+ "CRASH_CONSISTENT": "CRASH_CONSISTENT",
+ "NOT_SPECIFIED": "NOT_SPECIFIED"
+ }
+ },
+ "MigrationState": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DISABLE_MIGRATION_FAILED": "DISABLE_MIGRATION_FAILED",
+ "DISABLE_MIGRATION_IN_PROGRESS": "DISABLE_MIGRATION_IN_PROGRESS",
+ "ENABLE_MIGRATION_FAILED": "ENABLE_MIGRATION_FAILED",
+ "ENABLE_MIGRATION_IN_PROGRESS": "ENABLE_MIGRATION_IN_PROGRESS",
+ "INITIAL_SEEDING_FAILED": "INITIAL_SEEDING_FAILED",
+ "INITIAL_SEEDING_IN_PROGRESS": "INITIAL_SEEDING_IN_PROGRESS",
+ "MIGRATION_COMPLETED_WITH_INFORMATION": "MIGRATION_COMPLETED_WITH_INFORMATION",
+ "MIGRATION_FAILED": "MIGRATION_FAILED",
+ "MIGRATION_IN_PROGRESS": "MIGRATION_IN_PROGRESS",
+ "MIGRATION_PARTIALLY_SUCCEEDED": "MIGRATION_PARTIALLY_SUCCEEDED",
+ "MIGRATION_SUCCEEDED": "MIGRATION_SUCCEEDED",
+ "NONE": "NONE",
+ "PROTECTION_SUSPENDED": "PROTECTION_SUSPENDED",
+ "REPLICATING": "REPLICATING",
+ "RESUME_INITIATED": "RESUME_INITIATED",
+ "RESUME_IN_PROGRESS": "RESUME_IN_PROGRESS",
+ "SUSPENDING_PROTECTION": "SUSPENDING_PROTECTION"
+ }
+ },
+ "MobilityAgentUpgradeState": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "COMMIT": "COMMIT",
+ "COMPLETED": "COMPLETED",
+ "NONE": "NONE",
+ "STARTED": "STARTED"
+ }
+ },
+ "MobilityServiceUpdate": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "reboot_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "version": {
+ "attr_type": "version"
+ },
+ "reboot_status": {
+ "attr_type": "reboot_status"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "MultiVmGroupCreateOption": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "AUTO_CREATED": "AUTO_CREATED",
+ "USER_SPECIFIED": "USER_SPECIFIED"
+ }
+ },
+ "MultiVmSyncPointOption": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "USE_MULTI_VM_SYNC_RECOVERY_POINT": "USE_MULTI_VM_SYNC_RECOVERY_POINT",
+ "USE_PER_VM_RECOVERY_POINT": "USE_PER_VM_RECOVERY_POINT"
+ }
+ },
+ "Network": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkMapping": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkMappingCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkMappingFabricSpecificSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkMappingProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_network_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_network_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_specific_settings": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "state": {
+ "attr_type": "state"
+ },
+ "primary_network_friendly_name": {
+ "attr_type": "primary_network_friendly_name"
+ },
+ "primary_network_id": {
+ "attr_type": "primary_network_id"
+ },
+ "primary_fabric_friendly_name": {
+ "attr_type": "primary_fabric_friendly_name"
+ },
+ "recovery_network_friendly_name": {
+ "attr_type": "recovery_network_friendly_name"
+ },
+ "recovery_network_id": {
+ "attr_type": "recovery_network_id"
+ },
+ "recovery_fabric_arm_id": {
+ "attr_type": "recovery_fabric_arm_id"
+ },
+ "recovery_fabric_friendly_name": {
+ "attr_type": "recovery_fabric_friendly_name"
+ },
+ "fabric_specific_settings": {
+ "attr_type": "fabric_specific_settings"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NetworkProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "subnets": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "fabric_type": {
+ "attr_type": "fabric_type"
+ },
+ "subnets": {
+ "attr_type": "subnets"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "network_type": {
+ "attr_type": "network_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NewProtectionProfile": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_status": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_point_history": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "policy_name": {
+ "attr_type": "policy_name"
+ },
+ "recovery_point_history": {
+ "attr_type": "recovery_point_history"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "multi_vm_sync_status": {
+ "attr_type": "multi_vm_sync_status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "NewRecoveryVirtualNetwork": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_virtual_network_resource_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_virtual_network_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "recovery_virtual_network_resource_group_name": {
+ "attr_type": "recovery_virtual_network_resource_group_name"
+ },
+ "recovery_virtual_network_name": {
+ "attr_type": "recovery_virtual_network_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OSDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "product_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_edition": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "o_s_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "o_s_major_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "o_s_minor_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "product_type": {
+ "attr_type": "product_type"
+ },
+ "os_edition": {
+ "attr_type": "os_edition"
+ },
+ "o_s_version": {
+ "attr_type": "o_s_version"
+ },
+ "o_s_major_version": {
+ "attr_type": "o_s_major_version"
+ },
+ "o_s_minor_version": {
+ "attr_type": "o_s_minor_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OSDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "os_vhd_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vhd_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "os_vhd_id": {
+ "attr_type": "os_vhd_id"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "vhd_name": {
+ "attr_type": "vhd_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OSUpgradeSupportedVersions": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "supported_source_os_version": {
+ "attr_type": null
+ },
+ "supported_target_os_versions": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OSVersionWrapper": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "service_pack": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "version": {
+ "attr_type": "version"
+ },
+ "service_pack": {
+ "attr_type": "service_pack"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OperationsDiscovery": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "display": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "origin": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "display": {
+ "attr_type": "display"
+ },
+ "origin": {
+ "attr_type": "origin"
+ },
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "OperationsDiscoveryCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PauseReplicationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PauseReplicationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "instance_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": "instance_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PlannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PlannedFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PlannedFailoverProviderSpecificFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PlannedFailoverStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CANCELLED": "CANCELLED",
+ "FAILED": "FAILED",
+ "SUCCEEDED": "SUCCEEDED",
+ "UNKNOWN": "UNKNOWN"
+ }
+ },
+ "Policy": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PolicyCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PolicyProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PolicyProviderSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PolicyProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PossibleOperationsDirections": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "PRIMARY_TO_RECOVERY": "PRIMARY_TO_RECOVERY",
+ "RECOVERY_TO_PRIMARY": "RECOVERY_TO_PRIMARY"
+ }
+ },
+ "PresenceStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NOT_PRESENT": "NOT_PRESENT",
+ "PRESENT": "PRESENT",
+ "UNKNOWN": "UNKNOWN"
+ }
+ },
+ "ProcessServer": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "version_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "mobility_service_updates": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "host_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "machine_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_pair_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "system_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "system_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cpu_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cpu_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_memory_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "available_memory_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "memory_usage_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_space_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "available_space_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "space_usage_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ps_service_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ssl_cert_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ssl_cert_expiry_remaining_days": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "id": {
+ "attr_type": "id"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "version_status": {
+ "attr_type": "version_status"
+ },
+ "mobility_service_updates": {
+ "attr_type": "mobility_service_updates"
+ },
+ "host_id": {
+ "attr_type": "host_id"
+ },
+ "machine_count": {
+ "attr_type": "machine_count"
+ },
+ "replication_pair_count": {
+ "attr_type": "replication_pair_count"
+ },
+ "system_load": {
+ "attr_type": "system_load"
+ },
+ "system_load_status": {
+ "attr_type": "system_load_status"
+ },
+ "cpu_load": {
+ "attr_type": "cpu_load"
+ },
+ "cpu_load_status": {
+ "attr_type": "cpu_load_status"
+ },
+ "total_memory_in_bytes": {
+ "attr_type": "total_memory_in_bytes"
+ },
+ "available_memory_in_bytes": {
+ "attr_type": "available_memory_in_bytes"
+ },
+ "memory_usage_status": {
+ "attr_type": "memory_usage_status"
+ },
+ "total_space_in_bytes": {
+ "attr_type": "total_space_in_bytes"
+ },
+ "available_space_in_bytes": {
+ "attr_type": "available_space_in_bytes"
+ },
+ "space_usage_status": {
+ "attr_type": "space_usage_status"
+ },
+ "ps_service_status": {
+ "attr_type": "ps_service_status"
+ },
+ "ssl_cert_expiry_date": {
+ "attr_type": "ssl_cert_expiry_date"
+ },
+ "ssl_cert_expiry_remaining_days": {
+ "attr_type": "ssl_cert_expiry_remaining_days"
+ },
+ "os_version": {
+ "attr_type": "os_version"
+ },
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "agent_version_details": {
+ "attr_type": "agent_version_details"
+ },
+ "health": {
+ "attr_type": null
+ },
+ "ps_stats_refresh_time": {
+ "attr_type": null
+ },
+ "throughput_upload_pending_data_in_bytes": {
+ "attr_type": null
+ },
+ "throughput_in_m_bps": {
+ "attr_type": null
+ },
+ "throughput_in_bytes": {
+ "attr_type": null
+ },
+ "throughput_status": {
+ "attr_type": null
+ },
+ "mars_communication_status": {
+ "attr_type": null
+ },
+ "mars_registration_status": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProcessServerDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "ip_addresses": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "total_memory_in_bytes": {
+ "attr_type": null
+ },
+ "available_memory_in_bytes": {
+ "attr_type": null
+ },
+ "used_memory_in_bytes": {
+ "attr_type": null
+ },
+ "memory_usage_percentage": {
+ "attr_type": null
+ },
+ "total_space_in_bytes": {
+ "attr_type": null
+ },
+ "available_space_in_bytes": {
+ "attr_type": null
+ },
+ "used_space_in_bytes": {
+ "attr_type": null
+ },
+ "free_space_percentage": {
+ "attr_type": null
+ },
+ "throughput_upload_pending_data_in_bytes": {
+ "attr_type": null
+ },
+ "throughput_in_bytes": {
+ "attr_type": null
+ },
+ "processor_usage_percentage": {
+ "attr_type": null
+ },
+ "throughput_status": {
+ "attr_type": null
+ },
+ "system_load": {
+ "attr_type": null
+ },
+ "system_load_status": {
+ "attr_type": null
+ },
+ "disk_usage_status": {
+ "attr_type": null
+ },
+ "memory_usage_status": {
+ "attr_type": null
+ },
+ "processor_usage_status": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "protected_item_count": {
+ "attr_type": null
+ },
+ "historic_health": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectableItem": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectableItemCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectableItemProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_protected_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_services_provider_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_readiness_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "supported_replication_providers": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "custom_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "protection_status": {
+ "attr_type": "protection_status"
+ },
+ "replication_protected_item_id": {
+ "attr_type": "replication_protected_item_id"
+ },
+ "recovery_services_provider_id": {
+ "attr_type": "recovery_services_provider_id"
+ },
+ "protection_readiness_errors": {
+ "attr_type": "protection_readiness_errors"
+ },
+ "supported_replication_providers": {
+ "attr_type": "supported_replication_providers"
+ },
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectableItemQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "state": {
+ "attr_type": "state"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectedItemsQueryParameter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_plan_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_fabric_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_object_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_center_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_group_create_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "source_fabric_name": {
+ "attr_type": "source_fabric_name"
+ },
+ "recovery_plan_name": {
+ "attr_type": "recovery_plan_name"
+ },
+ "source_fabric_location": {
+ "attr_type": "source_fabric_location"
+ },
+ "fabric_object_id": {
+ "attr_type": "fabric_object_id"
+ },
+ "v_center_name": {
+ "attr_type": "v_center_name"
+ },
+ "instance_type": {
+ "attr_type": "instance_type"
+ },
+ "multi_vm_group_create_option": {
+ "attr_type": "multi_vm_group_create_option"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainer": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerFabricSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerMapping": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerMappingCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerMappingProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_protection_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_protection_container_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_protection_container_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_protection_container_id": {
+ "attr_type": "target_protection_container_id"
+ },
+ "target_protection_container_friendly_name": {
+ "attr_type": "target_protection_container_friendly_name"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "health": {
+ "attr_type": "health"
+ },
+ "health_error_details": {
+ "attr_type": "health_error_details"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "state": {
+ "attr_type": "state"
+ },
+ "source_protection_container_friendly_name": {
+ "attr_type": "source_protection_container_friendly_name"
+ },
+ "source_fabric_friendly_name": {
+ "attr_type": "source_fabric_friendly_name"
+ },
+ "target_fabric_friendly_name": {
+ "attr_type": "target_fabric_friendly_name"
+ },
+ "policy_friendly_name": {
+ "attr_type": "policy_friendly_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerMappingProviderSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionContainerProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_item_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "pairing_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "role": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "fabric_friendly_name": {
+ "attr_type": "fabric_friendly_name"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "fabric_type": {
+ "attr_type": "fabric_type"
+ },
+ "protected_item_count": {
+ "attr_type": "protected_item_count"
+ },
+ "pairing_status": {
+ "attr_type": "pairing_status"
+ },
+ "role": {
+ "attr_type": "role"
+ },
+ "fabric_specific_details": {
+ "attr_type": "fabric_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProtectionHealth": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CRITICAL": "CRITICAL",
+ "NONE": "NONE",
+ "NORMAL": "NORMAL",
+ "WARNING": "WARNING"
+ }
+ },
+ "ProtectionProfileCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProviderError": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "error_code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "error_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "possible_causes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recommended_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "error_code": {
+ "attr_type": "error_code"
+ },
+ "error_message": {
+ "attr_type": "error_message"
+ },
+ "error_id": {
+ "attr_type": "error_id"
+ },
+ "possible_causes": {
+ "attr_type": "possible_causes"
+ },
+ "recommended_action": {
+ "attr_type": "recommended_action"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ProviderSpecificRecoveryPointDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "PushInstallerDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RcmComponentStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CRITICAL": "CRITICAL",
+ "HEALTHY": "HEALTHY",
+ "UNKNOWN": "UNKNOWN",
+ "WARNING": "WARNING"
+ }
+ },
+ "RcmProxyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "client_authentication_type": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryAvailabilitySetCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlan": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanA2ADetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_zone": {
+ "attr_type": "primary_zone"
+ },
+ "recovery_zone": {
+ "attr_type": "recovery_zone"
+ },
+ "primary_extended_location": {
+ "attr_type": "primary_extended_location"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanA2AFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "cloud_service_creation_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "multi_vm_sync_point_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "cloud_service_creation_option": {
+ "attr_type": "cloud_service_creation_option"
+ },
+ "multi_vm_sync_point_option": {
+ "attr_type": "multi_vm_sync_point_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanA2AInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_extended_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_zone": {
+ "attr_type": "primary_zone"
+ },
+ "recovery_zone": {
+ "attr_type": "recovery_zone"
+ },
+ "primary_extended_location": {
+ "attr_type": "primary_extended_location"
+ },
+ "recovery_extended_location": {
+ "attr_type": "recovery_extended_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanAction": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "action_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "failover_types": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "failover_directions": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "custom_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "action_name": {
+ "attr_type": "action_name"
+ },
+ "failover_types": {
+ "attr_type": "failover_types"
+ },
+ "failover_directions": {
+ "attr_type": "failover_directions"
+ },
+ "custom_details": {
+ "attr_type": "custom_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanActionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanActionLocation": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "PRIMARY": "PRIMARY",
+ "RECOVERY": "RECOVERY"
+ }
+ },
+ "RecoveryPlanAutomationRunbookActionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_location": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "runbook_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "timeout": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "runbook_id": {
+ "attr_type": "runbook_id"
+ },
+ "timeout": {
+ "attr_type": "timeout"
+ },
+ "fabric_location": {
+ "attr_type": "fabric_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanGroup": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "group_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "replication_protected_items": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "start_group_actions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "end_group_actions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "group_type": {
+ "attr_type": "group_type"
+ },
+ "replication_protected_items": {
+ "attr_type": "replication_protected_items"
+ },
+ "start_group_actions": {
+ "attr_type": "start_group_actions"
+ },
+ "end_group_actions": {
+ "attr_type": "end_group_actions"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanGroupTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "child_tasks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rp_group_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "group_id": {
+ "attr_type": "group_id"
+ },
+ "rp_group_type": {
+ "attr_type": "rp_group_type"
+ },
+ "child_tasks": {
+ "attr_type": "child_tasks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanGroupType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "BOOT": "BOOT",
+ "FAILOVER": "FAILOVER",
+ "SHUTDOWN": "SHUTDOWN"
+ }
+ },
+ "RecoveryPlanHyperVReplicaAzureFailbackInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "data_sync_option": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "recovery_vm_creation_option": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "data_sync_option": {
+ "attr_type": "data_sync_option"
+ },
+ "recovery_vm_creation_option": {
+ "attr_type": "recovery_vm_creation_option"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanHyperVReplicaAzureFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "primary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "secondary_kek_certificate_pfx": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "primary_kek_certificate_pfx": {
+ "attr_type": "primary_kek_certificate_pfx"
+ },
+ "secondary_kek_certificate_pfx": {
+ "attr_type": "secondary_kek_certificate_pfx"
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanInMageAzureV2FailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "use_multi_vm_sync_point": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "use_multi_vm_sync_point": {
+ "attr_type": "use_multi_vm_sync_point"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanInMageFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanInMageRcmFailbackFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "use_multi_vm_sync_point": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "use_multi_vm_sync_point": {
+ "attr_type": "use_multi_vm_sync_point"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanInMageRcmFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "use_multi_vm_sync_point": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "use_multi_vm_sync_point": {
+ "attr_type": "use_multi_vm_sync_point"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanManualActionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "description": {
+ "attr_type": "description"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanPlannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanPlannedFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "LATEST": "LATEST",
+ "LATEST_APPLICATION_CONSISTENT": "LATEST_APPLICATION_CONSISTENT",
+ "LATEST_CRASH_CONSISTENT": "LATEST_CRASH_CONSISTENT",
+ "LATEST_PROCESSED": "LATEST_PROCESSED"
+ }
+ },
+ "RecoveryPlanProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_deployment_model": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_providers": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_operations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_planned_failover_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_unplanned_failover_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_test_failover_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "current_scenario": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "current_scenario_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "current_scenario_status_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "groups": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "primary_fabric_id": {
+ "attr_type": "primary_fabric_id"
+ },
+ "primary_fabric_friendly_name": {
+ "attr_type": "primary_fabric_friendly_name"
+ },
+ "recovery_fabric_id": {
+ "attr_type": "recovery_fabric_id"
+ },
+ "recovery_fabric_friendly_name": {
+ "attr_type": "recovery_fabric_friendly_name"
+ },
+ "failover_deployment_model": {
+ "attr_type": "failover_deployment_model"
+ },
+ "replication_providers": {
+ "attr_type": "replication_providers"
+ },
+ "allowed_operations": {
+ "attr_type": "allowed_operations"
+ },
+ "last_planned_failover_time": {
+ "attr_type": "last_planned_failover_time"
+ },
+ "last_unplanned_failover_time": {
+ "attr_type": "last_unplanned_failover_time"
+ },
+ "last_test_failover_time": {
+ "attr_type": "last_test_failover_time"
+ },
+ "current_scenario": {
+ "attr_type": "current_scenario"
+ },
+ "current_scenario_status": {
+ "attr_type": "current_scenario_status"
+ },
+ "current_scenario_status_description": {
+ "attr_type": "current_scenario_status_description"
+ },
+ "groups": {
+ "attr_type": "groups"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanProtectedItem": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "virtual_machine_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": "id"
+ },
+ "virtual_machine_id": {
+ "attr_type": "virtual_machine_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanProviderSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanProviderSpecificFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanScriptActionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "path": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "fabric_location": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "timeout": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "path": {
+ "attr_type": "path"
+ },
+ "timeout": {
+ "attr_type": "timeout"
+ },
+ "fabric_location": {
+ "attr_type": "fabric_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanShutdownGroupTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "child_tasks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "rp_group_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "group_id": {
+ "attr_type": "group_id"
+ },
+ "rp_group_type": {
+ "attr_type": "rp_group_type"
+ },
+ "child_tasks": {
+ "attr_type": "child_tasks"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanTestFailoverCleanupInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanTestFailoverCleanupInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "comments": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "comments": {
+ "attr_type": "comments"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanTestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanTestFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "network_type": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "network_type": {
+ "attr_type": "network_type"
+ },
+ "network_id": {
+ "attr_type": "network_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanUnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPlanUnplannedFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "source_site_operations": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "source_site_operations": {
+ "attr_type": "source_site_operations"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPoint": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPointCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPointProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_point_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_point_time": {
+ "attr_type": "recovery_point_time"
+ },
+ "recovery_point_type": {
+ "attr_type": "recovery_point_type"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryPointSyncType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "MULTI_VM_SYNC_RECOVERY_POINT": "MULTI_VM_SYNC_RECOVERY_POINT",
+ "PER_VM_RECOVERY_POINT": "PER_VM_RECOVERY_POINT"
+ }
+ },
+ "RecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CUSTOM": "CUSTOM",
+ "LATEST_TAG": "LATEST_TAG",
+ "LATEST_TIME": "LATEST_TIME"
+ }
+ },
+ "RecoveryProximityPlacementGroupCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryResourceGroupCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryServicesProvider": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryServicesProviderCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryServicesProviderProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "server_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_version_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_version_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heart_beat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "connection_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_item_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_scenarios": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "dra_identifier": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "machine_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "machine_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "bios_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "authentication_identity_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "resource_access_identity_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "data_plane_authentication_identity_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_version_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "fabric_type": {
+ "attr_type": "fabric_type"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "provider_version": {
+ "attr_type": "provider_version"
+ },
+ "server_version": {
+ "attr_type": "server_version"
+ },
+ "provider_version_state": {
+ "attr_type": "provider_version_state"
+ },
+ "provider_version_expiry_date": {
+ "attr_type": "provider_version_expiry_date"
+ },
+ "fabric_friendly_name": {
+ "attr_type": "fabric_friendly_name"
+ },
+ "last_heart_beat": {
+ "attr_type": "last_heart_beat"
+ },
+ "connection_status": {
+ "attr_type": "connection_status"
+ },
+ "protected_item_count": {
+ "attr_type": "protected_item_count"
+ },
+ "allowed_scenarios": {
+ "attr_type": "allowed_scenarios"
+ },
+ "health_error_details": {
+ "attr_type": "health_error_details"
+ },
+ "dra_identifier": {
+ "attr_type": "dra_identifier"
+ },
+ "machine_id": {
+ "attr_type": "machine_id"
+ },
+ "machine_name": {
+ "attr_type": "machine_name"
+ },
+ "bios_id": {
+ "attr_type": "bios_id"
+ },
+ "authentication_identity_details": {
+ "attr_type": "authentication_identity_details"
+ },
+ "resource_access_identity_details": {
+ "attr_type": "resource_access_identity_details"
+ },
+ "data_plane_authentication_identity_details": {
+ "attr_type": "data_plane_authentication_identity_details"
+ },
+ "provider_version_details": {
+ "attr_type": "provider_version_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RecoveryVirtualNetworkCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RemoveDisksInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RemoveDisksInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RemoveDisksProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RemoveProtectionContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RemoveProtectionContainerMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RenewCertificateInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RenewCertificateInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "renew_certificate_type": {
+ "attr_type": "renew_certificate_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationAppliance": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationApplianceProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationEligibilityResults": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "id": {
+ "attr_type": null
+ },
+ "properties": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationEligibilityResultsCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationEligibilityResultsErrorInfo": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "possible_causes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recommended_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "code": {
+ "attr_type": "code"
+ },
+ "message": {
+ "attr_type": "message"
+ },
+ "possible_causes": {
+ "attr_type": "possible_causes"
+ },
+ "recommended_action": {
+ "attr_type": "recommended_action"
+ },
+ "status": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationEligibilityResultsProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "client_request_id": {
+ "attr_type": null
+ },
+ "errors": {
+ "attr_type": "errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationGroupDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectedItem": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectedItemCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectedItemOperation": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CANCEL_FAILOVER": "CANCEL_FAILOVER",
+ "CHANGE_PIT": "CHANGE_PIT",
+ "COMMIT": "COMMIT",
+ "COMPLETE_MIGRATION": "COMPLETE_MIGRATION",
+ "DISABLE_PROTECTION": "DISABLE_PROTECTION",
+ "FAILBACK": "FAILBACK",
+ "FINALIZE_FAILBACK": "FINALIZE_FAILBACK",
+ "PLANNED_FAILOVER": "PLANNED_FAILOVER",
+ "REPAIR_REPLICATION": "REPAIR_REPLICATION",
+ "REVERSE_REPLICATE": "REVERSE_REPLICATE",
+ "SWITCH_PROTECTION": "SWITCH_PROTECTION",
+ "TEST_FAILOVER": "TEST_FAILOVER",
+ "TEST_FAILOVER_CLEANUP": "TEST_FAILOVER_CLEANUP",
+ "UNPLANNED_FAILOVER": "UNPLANNED_FAILOVER"
+ }
+ },
+ "ReplicationProtectedItemProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_item_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protectable_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_services_provider_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_fabric_provider": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_fabric_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "primary_protection_container_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_protection_container_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protection_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "active_location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_failover_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_failover_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "switch_provider_state": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "switch_provider_state_description": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "allowed_operations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "policy_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_successful_failover_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_successful_test_failover_time": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "current_scenario": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "failover_recovery_point_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_container_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "event_correlation_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "protected_item_type": {
+ "attr_type": "protected_item_type"
+ },
+ "protectable_item_id": {
+ "attr_type": "protectable_item_id"
+ },
+ "recovery_services_provider_id": {
+ "attr_type": "recovery_services_provider_id"
+ },
+ "primary_fabric_friendly_name": {
+ "attr_type": "primary_fabric_friendly_name"
+ },
+ "primary_fabric_provider": {
+ "attr_type": "primary_fabric_provider"
+ },
+ "recovery_fabric_friendly_name": {
+ "attr_type": "recovery_fabric_friendly_name"
+ },
+ "recovery_fabric_id": {
+ "attr_type": "recovery_fabric_id"
+ },
+ "primary_protection_container_friendly_name": {
+ "attr_type": "primary_protection_container_friendly_name"
+ },
+ "recovery_protection_container_friendly_name": {
+ "attr_type": "recovery_protection_container_friendly_name"
+ },
+ "protection_state": {
+ "attr_type": "protection_state"
+ },
+ "protection_state_description": {
+ "attr_type": "protection_state_description"
+ },
+ "active_location": {
+ "attr_type": "active_location"
+ },
+ "test_failover_state": {
+ "attr_type": "test_failover_state"
+ },
+ "test_failover_state_description": {
+ "attr_type": "test_failover_state_description"
+ },
+ "switch_provider_state": {
+ "attr_type": "switch_provider_state"
+ },
+ "switch_provider_state_description": {
+ "attr_type": "switch_provider_state_description"
+ },
+ "allowed_operations": {
+ "attr_type": "allowed_operations"
+ },
+ "replication_health": {
+ "attr_type": "replication_health"
+ },
+ "failover_health": {
+ "attr_type": "failover_health"
+ },
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "policy_id": {
+ "attr_type": "policy_id"
+ },
+ "policy_friendly_name": {
+ "attr_type": "policy_friendly_name"
+ },
+ "last_successful_failover_time": {
+ "attr_type": "last_successful_failover_time"
+ },
+ "last_successful_test_failover_time": {
+ "attr_type": "last_successful_test_failover_time"
+ },
+ "current_scenario": {
+ "attr_type": "current_scenario"
+ },
+ "failover_recovery_point_id": {
+ "attr_type": "failover_recovery_point_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "recovery_container_id": {
+ "attr_type": "recovery_container_id"
+ },
+ "event_correlation_id": {
+ "attr_type": "event_correlation_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectionIntent": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectionIntentCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectionIntentProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "job_id": {
+ "attr_type": null
+ },
+ "job_state": {
+ "attr_type": null
+ },
+ "is_active": {
+ "attr_type": null
+ },
+ "creation_time_utc": {
+ "attr_type": null
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProtectionIntentProviderSpecificSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProviderContainerUnmappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": "instance_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProviderSpecificContainerCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProviderSpecificContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProviderSpecificSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReplicationProviderSpecificUpdateContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReprotectAgentDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "bios_id": {
+ "attr_type": null
+ },
+ "fabric_object_id": {
+ "attr_type": null
+ },
+ "fqdn": {
+ "attr_type": null
+ },
+ "version": {
+ "attr_type": null
+ },
+ "last_heartbeat_utc": {
+ "attr_type": null
+ },
+ "health": {
+ "attr_type": null
+ },
+ "health_errors": {
+ "attr_type": null
+ },
+ "protected_item_count": {
+ "attr_type": null
+ },
+ "accessible_datastores": {
+ "attr_type": null
+ },
+ "vcenter_id": {
+ "attr_type": null
+ },
+ "last_discovery_in_utc": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResolveHealthError": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "health_error_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "health_error_id": {
+ "attr_type": "health_error_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResolveHealthInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResolveHealthInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "Resource": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResourceHealthSummary": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "issues": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "categorized_resource_counts": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_count": {
+ "attr_type": "resource_count"
+ },
+ "issues": {
+ "attr_type": "issues"
+ },
+ "categorized_resource_counts": {
+ "attr_type": "categorized_resource_counts"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResumeJobParams": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResumeJobParamsProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "comments": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "comments": {
+ "attr_type": "comments"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResumeReplicationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResumeReplicationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResumeReplicationProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResyncInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResyncInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResyncProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ResyncState": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NONE": "NONE",
+ "PREPARED_FOR_RESYNCHRONIZATION": "PREPARED_FOR_RESYNCHRONIZATION",
+ "STARTED_RESYNCHRONIZATION": "STARTED_RESYNCHRONIZATION"
+ }
+ },
+ "RetentionVolume": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "volume_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "capacity_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "free_space_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "threshold_percentage": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "volume_name": {
+ "attr_type": "volume_name"
+ },
+ "capacity_in_bytes": {
+ "attr_type": "capacity_in_bytes"
+ },
+ "free_space_in_bytes": {
+ "attr_type": "free_space_in_bytes"
+ },
+ "threshold_percentage": {
+ "attr_type": "threshold_percentage"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReverseReplicationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReverseReplicationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ReverseReplicationProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RoleAssignment": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "scope": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "principal_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "role_definition_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": "id"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "scope": {
+ "attr_type": "scope"
+ },
+ "principal_id": {
+ "attr_type": "principal_id"
+ },
+ "role_definition_id": {
+ "attr_type": "role_definition_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "RpInMageRecoveryPointType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CUSTOM": "CUSTOM",
+ "LATEST_TAG": "LATEST_TAG",
+ "LATEST_TIME": "LATEST_TIME"
+ }
+ },
+ "RunAsAccount": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "account_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "account_id": {
+ "attr_type": "account_id"
+ },
+ "account_name": {
+ "attr_type": "account_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "ScriptActionTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "path": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "output": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_primary_side_script": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "path": {
+ "attr_type": "path"
+ },
+ "output": {
+ "attr_type": "output"
+ },
+ "is_primary_side_script": {
+ "attr_type": "is_primary_side_script"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SecurityType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "CONFIDENTIAL_VM": "CONFIDENTIAL_VM",
+ "NONE": "NONE",
+ "TRUSTED_LAUNCH": "TRUSTED_LAUNCH"
+ }
+ },
+ "ServiceError": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "code": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "message": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "possible_causes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recommended_action": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "activity_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "code": {
+ "attr_type": "code"
+ },
+ "message": {
+ "attr_type": "message"
+ },
+ "possible_causes": {
+ "attr_type": "possible_causes"
+ },
+ "recommended_action": {
+ "attr_type": "recommended_action"
+ },
+ "activity_id": {
+ "attr_type": "activity_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SetMultiVmSyncStatus": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "DISABLE": "DISABLE",
+ "ENABLE": "ENABLE"
+ }
+ },
+ "Severity": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "ERROR": "ERROR",
+ "INFO": "INFO",
+ "NONE": "NONE",
+ "WARNING": "WARNING"
+ }
+ },
+ "SourceSiteOperations": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NOT_REQUIRED": "NOT_REQUIRED",
+ "REQUIRED": "REQUIRED"
+ }
+ },
+ "SqlServerLicenseType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "AHUB": "AHUB",
+ "NOT_SPECIFIED": "NOT_SPECIFIED",
+ "NO_LICENSE_TYPE": "NO_LICENSE_TYPE",
+ "PAYG": "PAYG"
+ }
+ },
+ "StorageAccountCustomDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "resource_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassification": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationMapping": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationMappingCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationMappingProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_storage_classification_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_storage_classification_id": {
+ "attr_type": "target_storage_classification_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageClassificationProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "StorageMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_storage_classification_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_storage_classification_id": {
+ "attr_type": "target_storage_classification_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "Subnet": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "address_list": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "address_list": {
+ "attr_type": "address_list"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SupportedOSDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "os_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_versions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "os_name": {
+ "attr_type": "os_name"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "os_versions": {
+ "attr_type": "os_versions"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SupportedOSProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "supported_os_list": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "supported_os_list": {
+ "attr_type": "supported_os_list"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SupportedOSProperty": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "supported_os": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": "instance_type"
+ },
+ "supported_os": {
+ "attr_type": "supported_os"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SupportedOperatingSystems": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProtectionInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProtectionInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replication_protected_item_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "replication_protected_item_name": {
+ "attr_type": "replication_protected_item_name"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProtectionJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "new_replication_protected_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "new_replication_protected_item_id": {
+ "attr_type": "new_replication_protected_item_id"
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProtectionProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProviderInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_instance_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_instance_type": {
+ "attr_type": "target_instance_type"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "SwitchProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TargetComputeSize": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "id": {
+ "attr_type": "id"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "type": {
+ "attr_type": "type"
+ },
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TargetComputeSizeCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TargetComputeSizeProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cpu_cores_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "memory_in_gb": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "max_data_disk_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "max_nics_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "high_iops_supported": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "hyper_v_generations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "name": {
+ "attr_type": "name"
+ },
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "cpu_cores_count": {
+ "attr_type": "cpu_cores_count"
+ },
+ "v_cpus_available": {
+ "attr_type": null
+ },
+ "memory_in_gb": {
+ "attr_type": "memory_in_gb"
+ },
+ "max_data_disk_count": {
+ "attr_type": "max_data_disk_count"
+ },
+ "max_nics_count": {
+ "attr_type": "max_nics_count"
+ },
+ "errors": {
+ "attr_type": "errors"
+ },
+ "high_iops_supported": {
+ "attr_type": "high_iops_supported"
+ },
+ "hyper_v_generations": {
+ "attr_type": "hyper_v_generations"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TaskTypeDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverCleanupInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverCleanupInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "comments": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "comments": {
+ "attr_type": "comments"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "network_type": {
+ "attr_type": "network_type"
+ },
+ "network_id": {
+ "attr_type": "network_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverJobDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "affected_object_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_failover_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "comments": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "network_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_item_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "test_failover_status": {
+ "attr_type": "test_failover_status"
+ },
+ "comments": {
+ "attr_type": "comments"
+ },
+ "network_name": {
+ "attr_type": "network_name"
+ },
+ "network_friendly_name": {
+ "attr_type": "network_friendly_name"
+ },
+ "network_type": {
+ "attr_type": "network_type"
+ },
+ "protected_item_details": {
+ "attr_type": "protected_item_details"
+ },
+ "affected_object_details": {
+ "attr_type": "affected_object_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestFailoverProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrateCleanupInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrateCleanupInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "comments": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "comments": {
+ "attr_type": "comments"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrateInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrateInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrateProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "TestMigrationState": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NONE": "NONE",
+ "TEST_MIGRATION_CLEANUP_IN_PROGRESS": "TEST_MIGRATION_CLEANUP_IN_PROGRESS",
+ "TEST_MIGRATION_COMPLETED_WITH_INFORMATION": "TEST_MIGRATION_COMPLETED_WITH_INFORMATION",
+ "TEST_MIGRATION_FAILED": "TEST_MIGRATION_FAILED",
+ "TEST_MIGRATION_IN_PROGRESS": "TEST_MIGRATION_IN_PROGRESS",
+ "TEST_MIGRATION_PARTIALLY_SUCCEEDED": "TEST_MIGRATION_PARTIALLY_SUCCEEDED",
+ "TEST_MIGRATION_SUCCEEDED": "TEST_MIGRATION_SUCCEEDED"
+ }
+ },
+ "UnplannedFailoverInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UnplannedFailoverInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_direction": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_site_operations": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "failover_direction": {
+ "attr_type": "failover_direction"
+ },
+ "source_site_operations": {
+ "attr_type": "source_site_operations"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UnplannedFailoverProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateApplianceForReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateApplianceForReplicationProtectedItemInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_appliance_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_appliance_id": {
+ "attr_type": "target_appliance_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateApplianceForReplicationProtectedItemProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateDiskInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "target_disk_name": {
+ "attr_type": "target_disk_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateMigrationItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateMigrationItemInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_details": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateMigrationItemProviderSpecificInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateMobilityServiceRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateMobilityServiceRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateNetworkMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_fabric_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_fabric_name": {
+ "attr_type": "recovery_fabric_name"
+ },
+ "recovery_network_id": {
+ "attr_type": "recovery_network_id"
+ },
+ "fabric_specific_details": {
+ "attr_type": "fabric_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdatePolicyInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdatePolicyInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replication_provider_settings": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "replication_provider_settings": {
+ "attr_type": "replication_provider_settings"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateProtectionContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateProtectionContainerMappingInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_specific_input": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "provider_specific_input": {
+ "attr_type": "provider_specific_input"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateRecoveryPlanInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateRecoveryPlanInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "groups": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "groups": {
+ "attr_type": "groups"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateReplicationProtectedItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateReplicationProtectedItemInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_azure_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_azure_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_recovery_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_tfo_azure_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selected_source_nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_rdp_on_target_option": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "provider_specific_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "recovery_azure_vm_name": {
+ "attr_type": "recovery_azure_vm_name"
+ },
+ "recovery_azure_vm_size": {
+ "attr_type": "recovery_azure_vm_size"
+ },
+ "selected_recovery_azure_network_id": {
+ "attr_type": "selected_recovery_azure_network_id"
+ },
+ "selected_tfo_azure_network_id": {
+ "attr_type": "selected_tfo_azure_network_id"
+ },
+ "selected_source_nic_id": {
+ "attr_type": "selected_source_nic_id"
+ },
+ "enable_rdp_on_target_option": {
+ "attr_type": "enable_rdp_on_target_option"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "recovery_availability_set_id": {
+ "attr_type": "recovery_availability_set_id"
+ },
+ "provider_specific_details": {
+ "attr_type": "provider_specific_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateReplicationProtectedItemProviderInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateVCenterRequest": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "UpdateVCenterRequestProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "port": {
+ "attr_type": "port"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VCenter": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VCenterCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VCenterProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "friendly_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "internal_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovery_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "infrastructure_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "port": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabric_arm_resource_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "health_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "friendly_name": {
+ "attr_type": "friendly_name"
+ },
+ "internal_id": {
+ "attr_type": "internal_id"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "discovery_status": {
+ "attr_type": "discovery_status"
+ },
+ "process_server_id": {
+ "attr_type": "process_server_id"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "infrastructure_id": {
+ "attr_type": "infrastructure_id"
+ },
+ "port": {
+ "attr_type": "port"
+ },
+ "run_as_account_id": {
+ "attr_type": "run_as_account_id"
+ },
+ "fabric_arm_resource_name": {
+ "attr_type": "fabric_arm_resource_name"
+ },
+ "health_errors": {
+ "attr_type": "health_errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMNicDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replica_nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "source_nic_arm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_m_network_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_vm_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_configs": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selection_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_network_security_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_accelerated_networking_on_recovery": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_vm_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_network_security_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_accelerated_networking_on_tfo": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_nic_resource_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "reuse_existing_nic": {
+ "default": "bool",
+ "param_type": "keyword_only"
+ },
+ "tfo_recovery_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_recovery_nic_resource_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_reuse_existing_nic": {
+ "default": "bool",
+ "param_type": "keyword_only"
+ },
+ "target_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": "nic_id"
+ },
+ "replica_nic_id": {
+ "attr_type": "replica_nic_id"
+ },
+ "source_nic_arm_id": {
+ "attr_type": "source_nic_arm_id"
+ },
+ "v_m_network_name": {
+ "attr_type": "v_m_network_name"
+ },
+ "recovery_vm_network_id": {
+ "attr_type": "recovery_vm_network_id"
+ },
+ "ip_configs": {
+ "attr_type": "ip_configs"
+ },
+ "selection_type": {
+ "attr_type": "selection_type"
+ },
+ "recovery_network_security_group_id": {
+ "attr_type": "recovery_network_security_group_id"
+ },
+ "enable_accelerated_networking_on_recovery": {
+ "attr_type": "enable_accelerated_networking_on_recovery"
+ },
+ "tfo_vm_network_id": {
+ "attr_type": "tfo_vm_network_id"
+ },
+ "tfo_network_security_group_id": {
+ "attr_type": "tfo_network_security_group_id"
+ },
+ "enable_accelerated_networking_on_tfo": {
+ "attr_type": "enable_accelerated_networking_on_tfo"
+ },
+ "recovery_nic_name": {
+ "attr_type": "recovery_nic_name"
+ },
+ "recovery_nic_resource_group_name": {
+ "attr_type": "recovery_nic_resource_group_name"
+ },
+ "reuse_existing_nic": {
+ "attr_type": "reuse_existing_nic"
+ },
+ "tfo_recovery_nic_name": {
+ "attr_type": "tfo_recovery_nic_name"
+ },
+ "tfo_recovery_nic_resource_group_name": {
+ "attr_type": "tfo_recovery_nic_resource_group_name"
+ },
+ "tfo_reuse_existing_nic": {
+ "attr_type": "tfo_reuse_existing_nic"
+ },
+ "target_nic_name": {
+ "attr_type": "target_nic_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMNicInputDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_configs": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "selection_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_network_security_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_accelerated_networking_on_recovery": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_network_security_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "enable_accelerated_networking_on_tfo": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "recovery_nic_resource_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "reuse_existing_nic": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_nic_resource_group_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "tfo_reuse_existing_nic": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": "nic_id"
+ },
+ "ip_configs": {
+ "attr_type": "ip_configs"
+ },
+ "selection_type": {
+ "attr_type": "selection_type"
+ },
+ "recovery_network_security_group_id": {
+ "attr_type": "recovery_network_security_group_id"
+ },
+ "enable_accelerated_networking_on_recovery": {
+ "attr_type": "enable_accelerated_networking_on_recovery"
+ },
+ "tfo_network_security_group_id": {
+ "attr_type": "tfo_network_security_group_id"
+ },
+ "enable_accelerated_networking_on_tfo": {
+ "attr_type": "enable_accelerated_networking_on_tfo"
+ },
+ "recovery_nic_name": {
+ "attr_type": "recovery_nic_name"
+ },
+ "recovery_nic_resource_group_name": {
+ "attr_type": "recovery_nic_resource_group_name"
+ },
+ "reuse_existing_nic": {
+ "attr_type": "reuse_existing_nic"
+ },
+ "tfo_nic_name": {
+ "attr_type": "tfo_nic_name"
+ },
+ "tfo_nic_resource_group_name": {
+ "attr_type": "tfo_nic_resource_group_name"
+ },
+ "tfo_reuse_existing_nic": {
+ "attr_type": "tfo_reuse_existing_nic"
+ },
+ "target_nic_name": {
+ "attr_type": "target_nic_name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtContainerCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtContainerMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_location": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "key_vault_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "key_vault_uri": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "storage_account_sas_secret_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "service_bus_connection_string_secret_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "key_vault_id": {
+ "attr_type": "key_vault_id"
+ },
+ "key_vault_uri": {
+ "attr_type": "key_vault_uri"
+ },
+ "storage_account_id": {
+ "attr_type": "storage_account_id"
+ },
+ "storage_account_sas_secret_name": {
+ "attr_type": "storage_account_sas_secret_name"
+ },
+ "service_bus_connection_string_secret_name": {
+ "attr_type": "service_bus_connection_string_secret_name"
+ },
+ "target_location": {
+ "attr_type": "target_location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtDiskInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "is_os_disk": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "log_storage_account_sas_secret_name": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_encryption_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "is_os_disk": {
+ "attr_type": "is_os_disk"
+ },
+ "log_storage_account_id": {
+ "attr_type": "log_storage_account_id"
+ },
+ "log_storage_account_sas_secret_name": {
+ "attr_type": "log_storage_account_sas_secret_name"
+ },
+ "disk_encryption_set_id": {
+ "attr_type": "disk_encryption_set_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtEnableMigrationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vmware_machine_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "disks_to_include": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "data_mover_run_as_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "snapshot_run_as_account_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "perform_sql_bulk_registration": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "confidential_vm_key_vault_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_security_profile": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "perform_auto_resync": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_machine_id": {
+ "attr_type": "vmware_machine_id"
+ },
+ "disks_to_include": {
+ "attr_type": "disks_to_include"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "perform_sql_bulk_registration": {
+ "attr_type": "perform_sql_bulk_registration"
+ },
+ "data_mover_run_as_account_id": {
+ "attr_type": "data_mover_run_as_account_id"
+ },
+ "snapshot_run_as_account_id": {
+ "attr_type": "snapshot_run_as_account_id"
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "confidential_vm_key_vault_id": {
+ "attr_type": "confidential_vm_key_vault_id"
+ },
+ "target_vm_security_profile": {
+ "attr_type": "target_vm_security_profile"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "perform_auto_resync": {
+ "attr_type": "perform_auto_resync"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "seed_disk_tags": {
+ "attr_type": "seed_disk_tags"
+ },
+ "target_disk_tags": {
+ "attr_type": "target_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtEventDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "migration_item_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtMigrateInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "perform_shutdown": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "perform_shutdown": {
+ "attr_type": "perform_shutdown"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtMigrationDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "confidential_vm_key_vault_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_security_profile": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "perform_auto_resync": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "seed_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "supported_os_versions": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_machine_id": {
+ "attr_type": null
+ },
+ "os_type": {
+ "attr_type": null
+ },
+ "os_name": {
+ "attr_type": null
+ },
+ "firmware_type": {
+ "attr_type": null
+ },
+ "target_generation": {
+ "attr_type": null
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "data_mover_run_as_account_id": {
+ "attr_type": null
+ },
+ "snapshot_run_as_account_id": {
+ "attr_type": null
+ },
+ "storage_account_id": {
+ "attr_type": null
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_location": {
+ "attr_type": null
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "confidential_vm_key_vault_id": {
+ "attr_type": "confidential_vm_key_vault_id"
+ },
+ "target_vm_security_profile": {
+ "attr_type": "target_vm_security_profile"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "protected_disks": {
+ "attr_type": "protected_disks"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "migration_recovery_point_id": {
+ "attr_type": null
+ },
+ "last_recovery_point_received": {
+ "attr_type": null
+ },
+ "last_recovery_point_id": {
+ "attr_type": null
+ },
+ "initial_seeding_progress_percentage": {
+ "attr_type": null
+ },
+ "migration_progress_percentage": {
+ "attr_type": null
+ },
+ "resync_progress_percentage": {
+ "attr_type": null
+ },
+ "resume_progress_percentage": {
+ "attr_type": null
+ },
+ "delta_sync_progress_percentage": {
+ "attr_type": null
+ },
+ "is_check_sum_resync_cycle": {
+ "attr_type": null
+ },
+ "initial_seeding_retry_count": {
+ "attr_type": null
+ },
+ "resync_retry_count": {
+ "attr_type": null
+ },
+ "resume_retry_count": {
+ "attr_type": null
+ },
+ "delta_sync_retry_count": {
+ "attr_type": null
+ },
+ "resync_required": {
+ "attr_type": null
+ },
+ "resync_state": {
+ "attr_type": null
+ },
+ "perform_auto_resync": {
+ "attr_type": "perform_auto_resync"
+ },
+ "seed_disk_tags": {
+ "attr_type": "seed_disk_tags"
+ },
+ "target_disk_tags": {
+ "attr_type": "target_disk_tags"
+ },
+ "supported_os_versions": {
+ "attr_type": "supported_os_versions"
+ },
+ "appliance_monitoring_details": {
+ "attr_type": null
+ },
+ "gateway_operation_details": {
+ "attr_type": null
+ },
+ "operation_name": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtNicDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "is_primary_nic": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_ip_address_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_selected_for_migration": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": null
+ },
+ "is_primary_nic": {
+ "attr_type": "is_primary_nic"
+ },
+ "source_ip_address": {
+ "attr_type": null
+ },
+ "source_ip_address_type": {
+ "attr_type": null
+ },
+ "source_network_id": {
+ "attr_type": null
+ },
+ "target_ip_address": {
+ "attr_type": "target_ip_address"
+ },
+ "target_ip_address_type": {
+ "attr_type": "target_ip_address_type"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "test_ip_address": {
+ "attr_type": "test_ip_address"
+ },
+ "test_ip_address_type": {
+ "attr_type": "test_ip_address_type"
+ },
+ "target_nic_name": {
+ "attr_type": "target_nic_name"
+ },
+ "is_selected_for_migration": {
+ "attr_type": "is_selected_for_migration"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtNicInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "nic_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "is_primary_nic": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_selected_for_migration": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_subnet_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_static_ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "nic_id": {
+ "attr_type": "nic_id"
+ },
+ "is_primary_nic": {
+ "attr_type": "is_primary_nic"
+ },
+ "target_subnet_name": {
+ "attr_type": "target_subnet_name"
+ },
+ "target_static_ip_address": {
+ "attr_type": "target_static_ip_address"
+ },
+ "is_selected_for_migration": {
+ "attr_type": "is_selected_for_migration"
+ },
+ "target_nic_name": {
+ "attr_type": "target_nic_name"
+ },
+ "test_subnet_name": {
+ "attr_type": "test_subnet_name"
+ },
+ "test_static_ip_address": {
+ "attr_type": "test_static_ip_address"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtPolicyCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_in_minutes": {
+ "attr_type": "recovery_point_history_in_minutes"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtProtectedDiskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": null
+ },
+ "disk_name": {
+ "attr_type": null
+ },
+ "disk_type": {
+ "attr_type": "disk_type"
+ },
+ "disk_path": {
+ "attr_type": null
+ },
+ "is_os_disk": {
+ "attr_type": null
+ },
+ "capacity_in_bytes": {
+ "attr_type": null
+ },
+ "log_storage_account_id": {
+ "attr_type": null
+ },
+ "log_storage_account_sas_secret_name": {
+ "attr_type": null
+ },
+ "disk_encryption_set_id": {
+ "attr_type": null
+ },
+ "seed_managed_disk_id": {
+ "attr_type": null
+ },
+ "seed_blob_uri": {
+ "attr_type": null
+ },
+ "target_managed_disk_id": {
+ "attr_type": null
+ },
+ "target_blob_uri": {
+ "attr_type": null
+ },
+ "target_disk_name": {
+ "attr_type": "target_disk_name"
+ },
+ "gateway_operation_details": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtProtectionContainerMappingDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "excluded_skus": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "key_vault_id": {
+ "attr_type": null
+ },
+ "key_vault_uri": {
+ "attr_type": null
+ },
+ "storage_account_id": {
+ "attr_type": null
+ },
+ "storage_account_sas_secret_name": {
+ "attr_type": null
+ },
+ "service_bus_connection_string_secret_name": {
+ "attr_type": null
+ },
+ "target_location": {
+ "attr_type": null
+ },
+ "role_size_to_nic_count_map": {
+ "attr_type": null
+ },
+ "excluded_skus": {
+ "attr_type": "excluded_skus"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtResumeReplicationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "delete_migration_resources": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "delete_migration_resources": {
+ "attr_type": "delete_migration_resources"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtResyncInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_cbt_reset": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "skip_cbt_reset": {
+ "attr_type": "skip_cbt_reset"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtSecurityProfileProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_vm_security_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_target_vm_secure_boot_enabled": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_target_vm_tpm_enabled": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_target_vm_integrity_monitoring_enabled": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_target_vm_confidential_encryption_enabled": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "target_vm_security_type": {
+ "attr_type": "target_vm_security_type"
+ },
+ "is_target_vm_secure_boot_enabled": {
+ "attr_type": "is_target_vm_secure_boot_enabled"
+ },
+ "is_target_vm_tpm_enabled": {
+ "attr_type": "is_target_vm_tpm_enabled"
+ },
+ "is_target_vm_integrity_monitoring_enabled": {
+ "attr_type": "is_target_vm_integrity_monitoring_enabled"
+ },
+ "is_target_vm_confidential_encryption_enabled": {
+ "attr_type": "is_target_vm_confidential_encryption_enabled"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtTestMigrateInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "network_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_upgrade_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_id": {
+ "attr_type": "recovery_point_id"
+ },
+ "network_id": {
+ "attr_type": "network_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "os_upgrade_version": {
+ "attr_type": "os_upgrade_version"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtUpdateDiskInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disk_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "target_disk_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "is_os_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "disk_id": {
+ "attr_type": "disk_id"
+ },
+ "target_disk_name": {
+ "attr_type": "target_disk_name"
+ },
+ "is_os_disk": {
+ "attr_type": "is_os_disk"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareCbtUpdateMigrationItemInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "target_vm_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_size": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_resource_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_set_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_availability_zone": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_proximity_placement_group_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "test_network_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_nics": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vm_disks": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "sql_server_license_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "perform_auto_resync": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_vm_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_disk_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "target_nic_tags": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "target_vm_name": {
+ "attr_type": "target_vm_name"
+ },
+ "target_vm_size": {
+ "attr_type": "target_vm_size"
+ },
+ "target_resource_group_id": {
+ "attr_type": "target_resource_group_id"
+ },
+ "target_availability_set_id": {
+ "attr_type": "target_availability_set_id"
+ },
+ "target_availability_zone": {
+ "attr_type": "target_availability_zone"
+ },
+ "target_proximity_placement_group_id": {
+ "attr_type": "target_proximity_placement_group_id"
+ },
+ "target_boot_diagnostics_storage_account_id": {
+ "attr_type": "target_boot_diagnostics_storage_account_id"
+ },
+ "target_network_id": {
+ "attr_type": "target_network_id"
+ },
+ "test_network_id": {
+ "attr_type": "test_network_id"
+ },
+ "vm_nics": {
+ "attr_type": "vm_nics"
+ },
+ "vm_disks": {
+ "attr_type": "vm_disks"
+ },
+ "license_type": {
+ "attr_type": "license_type"
+ },
+ "sql_server_license_type": {
+ "attr_type": "sql_server_license_type"
+ },
+ "perform_auto_resync": {
+ "attr_type": "perform_auto_resync"
+ },
+ "target_vm_tags": {
+ "attr_type": "target_vm_tags"
+ },
+ "target_disk_tags": {
+ "attr_type": "target_disk_tags"
+ },
+ "target_nic_tags": {
+ "attr_type": "target_nic_tags"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "process_servers": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "master_target_servers": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "run_as_accounts": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "replication_pair_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "process_server_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_count": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_servers": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "system_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "system_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cpu_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cpu_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_memory_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "available_memory_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "memory_usage_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "total_space_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "available_space_in_bytes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "space_usage_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "web_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "web_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "database_server_load": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "database_server_load_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "cs_service_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "host_name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "last_heartbeat": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "version_status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ssl_cert_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ssl_cert_expiry_remaining_days": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ps_template_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "switch_provider_blocking_error_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "process_servers": {
+ "attr_type": "process_servers"
+ },
+ "master_target_servers": {
+ "attr_type": "master_target_servers"
+ },
+ "run_as_accounts": {
+ "attr_type": "run_as_accounts"
+ },
+ "replication_pair_count": {
+ "attr_type": "replication_pair_count"
+ },
+ "process_server_count": {
+ "attr_type": "process_server_count"
+ },
+ "agent_count": {
+ "attr_type": "agent_count"
+ },
+ "protected_servers": {
+ "attr_type": "protected_servers"
+ },
+ "system_load": {
+ "attr_type": "system_load"
+ },
+ "system_load_status": {
+ "attr_type": "system_load_status"
+ },
+ "cpu_load": {
+ "attr_type": "cpu_load"
+ },
+ "cpu_load_status": {
+ "attr_type": "cpu_load_status"
+ },
+ "total_memory_in_bytes": {
+ "attr_type": "total_memory_in_bytes"
+ },
+ "available_memory_in_bytes": {
+ "attr_type": "available_memory_in_bytes"
+ },
+ "memory_usage_status": {
+ "attr_type": "memory_usage_status"
+ },
+ "total_space_in_bytes": {
+ "attr_type": "total_space_in_bytes"
+ },
+ "available_space_in_bytes": {
+ "attr_type": "available_space_in_bytes"
+ },
+ "space_usage_status": {
+ "attr_type": "space_usage_status"
+ },
+ "web_load": {
+ "attr_type": "web_load"
+ },
+ "web_load_status": {
+ "attr_type": "web_load_status"
+ },
+ "database_server_load": {
+ "attr_type": "database_server_load"
+ },
+ "database_server_load_status": {
+ "attr_type": "database_server_load_status"
+ },
+ "cs_service_status": {
+ "attr_type": "cs_service_status"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "host_name": {
+ "attr_type": "host_name"
+ },
+ "last_heartbeat": {
+ "attr_type": "last_heartbeat"
+ },
+ "version_status": {
+ "attr_type": "version_status"
+ },
+ "ssl_cert_expiry_date": {
+ "attr_type": "ssl_cert_expiry_date"
+ },
+ "ssl_cert_expiry_remaining_days": {
+ "attr_type": "ssl_cert_expiry_remaining_days"
+ },
+ "ps_template_version": {
+ "attr_type": "ps_template_version"
+ },
+ "agent_expiry_date": {
+ "attr_type": "agent_expiry_date"
+ },
+ "agent_version_details": {
+ "attr_type": "agent_version_details"
+ },
+ "switch_provider_blocking_error_details": {
+ "attr_type": "switch_provider_blocking_error_details"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareV2FabricCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_solution_id": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "vmware_site_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "physical_site_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_site_id": {
+ "attr_type": "vmware_site_id"
+ },
+ "physical_site_id": {
+ "attr_type": "physical_site_id"
+ },
+ "migration_solution_id": {
+ "attr_type": "migration_solution_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareV2FabricSpecificDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vmware_site_id": {
+ "attr_type": null
+ },
+ "physical_site_id": {
+ "attr_type": null
+ },
+ "migration_solution_id": {
+ "attr_type": null
+ },
+ "service_endpoint": {
+ "attr_type": null
+ },
+ "service_resource_id": {
+ "attr_type": null
+ },
+ "service_container_id": {
+ "attr_type": null
+ },
+ "process_servers": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VMwareVirtualMachineDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "agent_generated_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_installed": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "agent_version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "ip_address": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "powered_on": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "v_center_infrastructure_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "discovery_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "validation_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "agent_generated_id": {
+ "attr_type": "agent_generated_id"
+ },
+ "agent_installed": {
+ "attr_type": "agent_installed"
+ },
+ "os_type": {
+ "attr_type": "os_type"
+ },
+ "agent_version": {
+ "attr_type": "agent_version"
+ },
+ "ip_address": {
+ "attr_type": "ip_address"
+ },
+ "powered_on": {
+ "attr_type": "powered_on"
+ },
+ "v_center_infrastructure_id": {
+ "attr_type": "v_center_infrastructure_id"
+ },
+ "discovery_type": {
+ "attr_type": "discovery_type"
+ },
+ "disk_details": {
+ "attr_type": "disk_details"
+ },
+ "validation_errors": {
+ "attr_type": "validation_errors"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultHealthDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultHealthProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_errors": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "protected_items_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "fabrics_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "containers_health": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "vault_errors": {
+ "attr_type": "vault_errors"
+ },
+ "protected_items_health": {
+ "attr_type": "protected_items_health"
+ },
+ "fabrics_health": {
+ "attr_type": "fabrics_health"
+ },
+ "containers_health": {
+ "attr_type": "containers_health"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultSetting": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "location": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "properties": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "id": {
+ "attr_type": null
+ },
+ "name": {
+ "attr_type": null
+ },
+ "type": {
+ "attr_type": null
+ },
+ "location": {
+ "attr_type": "location"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultSettingCollection": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "value": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "next_link": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "value": {
+ "attr_type": "value"
+ },
+ "next_link": {
+ "attr_type": "next_link"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultSettingCreationInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "properties": {
+ "default": null,
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "properties": {
+ "attr_type": "properties"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultSettingCreationInputProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_solution_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vmware_to_azure_provider_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "migration_solution_id": {
+ "attr_type": "migration_solution_id"
+ },
+ "vmware_to_azure_provider_type": {
+ "attr_type": "vmware_to_azure_provider_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VaultSettingProperties": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_solution_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "vmware_to_azure_provider_type": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "migration_solution_id": {
+ "attr_type": "migration_solution_id"
+ },
+ "vmware_to_azure_provider_type": {
+ "attr_type": "vmware_to_azure_provider_type"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VersionDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "version": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "expiry_date": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "status": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "version": {
+ "attr_type": "version"
+ },
+ "expiry_date": {
+ "attr_type": "expiry_date"
+ },
+ "status": {
+ "attr_type": "status"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VirtualMachineTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_task": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "skipped_reason": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "skipped_reason_string": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "skipped_reason": {
+ "attr_type": "skipped_reason"
+ },
+ "skipped_reason_string": {
+ "attr_type": "skipped_reason_string"
+ },
+ "job_task": {
+ "attr_type": "job_task"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmEncryptionType": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "NOT_ENCRYPTED": "NOT_ENCRYPTED",
+ "ONE_PASS_ENCRYPTED": "ONE_PASS_ENCRYPTED",
+ "TWO_PASS_ENCRYPTED": "TWO_PASS_ENCRYPTED"
+ }
+ },
+ "VmNicUpdatesTaskDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vm_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "nic_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "name": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "vm_id": {
+ "attr_type": "vm_id"
+ },
+ "nic_id": {
+ "attr_type": "nic_id"
+ },
+ "name": {
+ "attr_type": "name"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmReplicationProgressHealth": {
+ "type": "Enum",
+ "methods": {},
+ "properties": {
+ "IN_PROGRESS": "IN_PROGRESS",
+ "NONE": "NONE",
+ "NO_PROGRESS": "NO_PROGRESS",
+ "SLOW_PROGRESS": "SLOW_PROGRESS"
+ }
+ },
+ "VmmDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToAzureCreateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToAzureNetworkMappingSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToAzureUpdateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToVmmCreateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToVmmNetworkMappingSettings": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmToVmmUpdateNetworkMappingInput": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmmVirtualMachineDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "source_item_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "generation": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "os_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "disk_details": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_physical_disk": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_fibre_channel_adapter": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "has_shared_vhd": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "hyper_v_host_id": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "source_item_id": {
+ "attr_type": "source_item_id"
+ },
+ "generation": {
+ "attr_type": "generation"
+ },
+ "os_details": {
+ "attr_type": "os_details"
+ },
+ "disk_details": {
+ "attr_type": "disk_details"
+ },
+ "has_physical_disk": {
+ "attr_type": "has_physical_disk"
+ },
+ "has_fibre_channel_adapter": {
+ "attr_type": "has_fibre_channel_adapter"
+ },
+ "has_shared_vhd": {
+ "attr_type": "has_shared_vhd"
+ },
+ "hyper_v_host_id": {
+ "attr_type": "hyper_v_host_id"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ },
+ "VmwareCbtPolicyDetails": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_history_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "default": "none",
+ "param_type": "keyword_only"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "as_dict": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "key_transformer": {
+ "default": "attribute_transformer",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "deserialize": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "enable_additional_properties_sending": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "from_dict": {
+ "parameters": {
+ "data": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "key_extractors": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "is_xml_model": {
+ "parameters": {},
+ "is_async": false,
+ "overloads": []
+ },
+ "serialize": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "keep_readonly": {
+ "default": "bool",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "instance_type": {
+ "attr_type": null
+ },
+ "recovery_point_history_in_minutes": {
+ "attr_type": "recovery_point_history_in_minutes"
+ },
+ "app_consistent_frequency_in_minutes": {
+ "attr_type": "app_consistent_frequency_in_minutes"
+ },
+ "crash_consistent_frequency_in_minutes": {
+ "attr_type": "crash_consistent_frequency_in_minutes"
+ },
+ "additional_properties": {
+ "attr_type": null
+ }
+ }
+ }
+ },
+ "function_nodes": {}
+ },
+ "azure.mgmt.recoveryservicessiterecovery.operations": {
+ "class_nodes": {
+ "MigrationRecoveryPointsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_recovery_point_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_migration_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "Operations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "RecoveryPointsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protected_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationAlertSettingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "type": "ConfigureAlertRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationAppliancesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationEligibilityResultsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "virtual_machine_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "virtual_machine_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationEventsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "event_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationFabricsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_check_consistency": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "FabricCreationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_migrate_to_aad": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_reassociate_gateway": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "type": "FailoverProcessServerRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_remove_infra": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_renew_certificate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "type": "RenewCertificateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationJobsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_export": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "type": "JobQueryParameter",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_restart": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_resume": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "type": "ResumeJobParams",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationLogicalNetworksOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "logical_network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationMigrationItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "EnableMigrationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "delete_option": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_migrate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "type": "MigrateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_pause_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "type": "PauseReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resume_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "type": "ResumeReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resync": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "ResyncInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_migrate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "type": "TestMigrateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_migrate_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "type": "TestMigrateCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateMigrationItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationNetworkMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateNetworkMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateNetworkMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_networks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationNetworksOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationPoliciesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreatePolicyInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdatePolicyInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectableItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protectable_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectedItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_add_disks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "type": "AddDisksInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_apply_recovery_point": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "type": "ApplyRecoveryPointInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "EnableProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "type": "DisableProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_failover_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_failover_commit": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_planned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "PlannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_remove_disks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "type": "RemoveDisksInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_repair_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_reprotect": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "type": "ReverseReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resolve_health_errors": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "type": "ResolveHealthInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_switch_provider": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "type": "SwitchProviderInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "type": "TestFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "type": "TestFailoverCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_unplanned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "UnplannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "type": "UpdateReplicationProtectedItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update_appliance": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "type": "UpdateApplianceForReplicationProtectedItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update_mobility_service": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "type": "UpdateMobilityServiceRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionContainerMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "CreateProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "type": "RemoveProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "type": "UpdateProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionContainersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "CreateProtectionContainerInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_discover_protectable_item": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "type": "DiscoverProtectableItemRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_switch_protection": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "type": "SwitchProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionIntentsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateProtectionIntentInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationRecoveryPlansOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateRecoveryPlanInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_failover_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_failover_commit": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_planned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanPlannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_reprotect": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_test_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanTestFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanTestFailoverCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_unplanned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanUnplannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateRecoveryPlanInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationRecoveryServicesProvidersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "type": "AddRecoveryServicesProviderInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_refresh_provider": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationStorageClassificationMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "type": "StorageClassificationMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_storage_classifications": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationStorageClassificationsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationVaultHealthOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_refresh": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationVaultSettingOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "VaultSettingCreationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationvCentersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "type": "AddVCenterRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "type": "UpdateVCenterRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": false,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "SupportedOperatingSystemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "TargetComputeSizesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protected_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ }
+ },
+ "function_nodes": {}
+ },
+ "azure.mgmt.recoveryservicessiterecovery.aio": {
+ "class_nodes": {
+ "SiteRecoveryManagementClient": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "credential": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "subscription_id": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_group_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "base_url": {
+ "default": "str",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "close": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ }
+ },
+ "properties": {
+ "client_side_validation": {
+ "attr_type": false
+ },
+ "operations": {
+ "attr_type": "Operations"
+ },
+ "replication_alert_settings": {
+ "attr_type": "ReplicationAlertSettingsOperations"
+ },
+ "replication_appliances": {
+ "attr_type": "ReplicationAppliancesOperations"
+ },
+ "replication_eligibility_results": {
+ "attr_type": "ReplicationEligibilityResultsOperations"
+ },
+ "replication_events": {
+ "attr_type": "ReplicationEventsOperations"
+ },
+ "replication_fabrics": {
+ "attr_type": "ReplicationFabricsOperations"
+ },
+ "replication_logical_networks": {
+ "attr_type": "ReplicationLogicalNetworksOperations"
+ },
+ "replication_networks": {
+ "attr_type": "ReplicationNetworksOperations"
+ },
+ "replication_network_mappings": {
+ "attr_type": "ReplicationNetworkMappingsOperations"
+ },
+ "replication_protection_containers": {
+ "attr_type": "ReplicationProtectionContainersOperations"
+ },
+ "replication_migration_items": {
+ "attr_type": "ReplicationMigrationItemsOperations"
+ },
+ "migration_recovery_points": {
+ "attr_type": "MigrationRecoveryPointsOperations"
+ },
+ "replication_protectable_items": {
+ "attr_type": "ReplicationProtectableItemsOperations"
+ },
+ "replication_protected_items": {
+ "attr_type": "ReplicationProtectedItemsOperations"
+ },
+ "recovery_points": {
+ "attr_type": "RecoveryPointsOperations"
+ },
+ "target_compute_sizes": {
+ "attr_type": "TargetComputeSizesOperations"
+ },
+ "replication_protection_container_mappings": {
+ "attr_type": "ReplicationProtectionContainerMappingsOperations"
+ },
+ "replication_recovery_services_providers": {
+ "attr_type": "ReplicationRecoveryServicesProvidersOperations"
+ },
+ "replication_storage_classifications": {
+ "attr_type": "ReplicationStorageClassificationsOperations"
+ },
+ "replication_storage_classification_mappings": {
+ "attr_type": "ReplicationStorageClassificationMappingsOperations"
+ },
+ "replicationv_centers": {
+ "attr_type": "ReplicationvCentersOperations"
+ },
+ "replication_jobs": {
+ "attr_type": "ReplicationJobsOperations"
+ },
+ "replication_policies": {
+ "attr_type": "ReplicationPoliciesOperations"
+ },
+ "replication_protection_intents": {
+ "attr_type": "ReplicationProtectionIntentsOperations"
+ },
+ "replication_recovery_plans": {
+ "attr_type": "ReplicationRecoveryPlansOperations"
+ },
+ "supported_operating_systems": {
+ "attr_type": "SupportedOperatingSystemsOperations"
+ },
+ "replication_vault_health": {
+ "attr_type": "ReplicationVaultHealthOperations"
+ },
+ "replication_vault_setting": {
+ "attr_type": "ReplicationVaultSettingOperations"
+ }
+ }
+ }
+ },
+ "function_nodes": {}
+ },
+ "azure.mgmt.recoveryservicessiterecovery.aio.operations": {
+ "class_nodes": {
+ "MigrationRecoveryPointsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_recovery_point_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list_by_replication_migration_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "Operations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "RecoveryPointsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_point_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list_by_replication_protected_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationAlertSettingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "type": "ConfigureAlertRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "alert_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationAppliancesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationEligibilityResultsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "virtual_machine_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "virtual_machine_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationEventsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "event_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationFabricsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_check_consistency": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "FabricCreationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_migrate_to_aad": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_reassociate_gateway": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "type": "FailoverProcessServerRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_process_server_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_remove_infra": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resource_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_renew_certificate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "type": "RenewCertificateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "renew_certificate": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationJobsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_export": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "type": "JobQueryParameter",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_query_parameter": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_restart": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_resume": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "type": "ResumeJobParams",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_job_params": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "job_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationLogicalNetworksOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "logical_network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationMigrationItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "EnableMigrationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "delete_option": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_migrate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "type": "MigrateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migrate_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_pause_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "type": "PauseReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pause_replication_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resume_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "type": "ResumeReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resume_replication_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resync": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "ResyncInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_migrate": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "type": "TestMigrateInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_migrate_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "type": "TestMigrateCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "test_migrate_cleanup_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateMigrationItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "migration_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationNetworkMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateNetworkMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateNetworkMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_networks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationNetworksOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "network_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationPoliciesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreatePolicyInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdatePolicyInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "policy_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectableItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protectable_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectedItemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_add_disks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "type": "AddDisksInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_disks_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_apply_recovery_point": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "type": "ApplyRecoveryPointInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "apply_recovery_point_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "EnableProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "type": "DisableProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "disable_protection_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_failover_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_failover_commit": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_planned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "PlannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_remove_disks": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "type": "RemoveDisksInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "remove_disks_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_repair_replication": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_reprotect": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "type": "ReverseReplicationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "reprotect_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_resolve_health_errors": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "type": "ResolveHealthInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "resolve_health_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_switch_provider": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "type": "SwitchProviderInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_provider_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "type": "TestFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "testfailover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "type": "TestFailoverCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "cleanup_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_unplanned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "UnplannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "failover_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "type": "UpdateReplicationProtectedItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_protection_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update_appliance": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "type": "UpdateApplianceForReplicationProtectedItemInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "appliance_update_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update_mobility_service": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "type": "UpdateMobilityServiceRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_mobility_service_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "filter": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionContainerMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "CreateProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "type": "RemoveProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "removal_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "type": "UpdateProtectionContainerMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protection_containers": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionContainersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "CreateProtectionContainerInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "creation_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_discover_protectable_item": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "type": "DiscoverProtectableItemRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "discover_protectable_item_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_switch_protection": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "type": "SwitchProtectionInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "switch_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationProtectionIntentsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateProtectionIntentInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "intent_object_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "skip_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "take_token": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationRecoveryPlansOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "CreateRecoveryPlanInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_failover_cancel": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_failover_commit": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_planned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanPlannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_reprotect": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_test_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanTestFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_test_failover_cleanup": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanTestFailoverCleanupInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_unplanned_failover": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "RecoveryPlanUnplannedFailoverInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "UpdateRecoveryPlanInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "recovery_plan_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationRecoveryServicesProvidersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "type": "AddRecoveryServicesProviderInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_provider_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_purge": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_refresh_provider": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "provider_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationStorageClassificationMappingsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "type": "StorageClassificationMappingInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "pairing_input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_mapping_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_storage_classifications": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationStorageClassificationsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "storage_classification_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationVaultHealthOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_refresh": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationVaultSettingOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "VaultSettingCreationInput",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "input": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vault_setting_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "ReplicationvCentersOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "begin_create": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "type": "AddVCenterRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "add_v_center_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "begin_delete": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "begin_update": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": [
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "type": "UpdateVCenterRequest",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ },
+ {
+ "parameters": {
+ "self": {
+ "type": null,
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "type": "str",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "update_v_center_request": {
+ "type": "IO",
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "content_type": {
+ "type": "str",
+ "default": "application/json",
+ "param_type": "keyword_only"
+ }
+ },
+ "is_async": true,
+ "return_type": null
+ }
+ ]
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "vcenter_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ },
+ "list": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_fabrics": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "SupportedOperatingSystemsOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "get": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "instance_type": {
+ "default": "none",
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": true,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ },
+ "TargetComputeSizesOperations": {
+ "type": null,
+ "methods": {
+ "__init__": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "args": {
+ "default": null,
+ "param_type": "var_positional"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ },
+ "list_by_replication_protected_items": {
+ "parameters": {
+ "self": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "fabric_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "protection_container_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "replicated_protected_item_name": {
+ "default": null,
+ "param_type": "positional_or_keyword"
+ },
+ "kwargs": {
+ "default": null,
+ "param_type": "var_keyword"
+ }
+ },
+ "is_async": false,
+ "overloads": []
+ }
+ },
+ "properties": {}
+ }
+ },
+ "function_nodes": {}
+ }
+}
\ No newline at end of file