From 18ab5eb87b3d084e7a0914ff538bc8792068669c Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Thu, 9 Nov 2023 23:47:21 +0000 Subject: [PATCH] CodeGen from PR 3087 in test-repo-billy/azure-rest-api-specs Merge 80551b8cd20a7df548a2b98697e7c690d54ca9ff into 4b4e0b08aca18fa159396e290e3ef559416a4cb3 --- sdk/agrifood/azure-mgmt-agrifood/_meta.json | 12 +- .../mgmt/agrifood/_agri_food_mgmt_client.py | 60 +- .../azure/mgmt/agrifood/_configuration.py | 17 +- .../azure/mgmt/agrifood/_serialization.py | 119 +- .../azure/mgmt/agrifood/_vendor.py | 11 - .../azure/mgmt/agrifood/_version.py | 2 +- .../agrifood/aio/_agri_food_mgmt_client.py | 61 +- .../azure/mgmt/agrifood/aio/_configuration.py | 19 +- .../mgmt/agrifood/aio/operations/__init__.py | 16 +- ...=> _check_name_availability_operations.py} | 48 +- .../operations/_data_connectors_operations.py | 468 +++++ ..._for_agriculture_extensions_operations.py} | 71 +- ...r_for_agriculture_resources_operations.py} | 387 ++-- .../aio/operations/_extensions_operations.py | 146 +- .../_operation_results_operations.py | 113 ++ .../agrifood/aio/operations/_operations.py | 12 +- ...private_endpoint_connections_operations.py | 231 +-- .../_private_link_resources_operations.py | 152 +- .../_solutions_discoverability_operations.py | 68 +- .../aio/operations/_solutions_operations.py | 141 +- .../azure/mgmt/agrifood/models/__init__.py | 68 +- .../models/_agri_food_mgmt_client_enums.py | 14 +- .../azure/mgmt/agrifood/models/_models_py3.py | 1697 +++++++++-------- .../mgmt/agrifood/operations/__init__.py | 16 +- ...=> _check_name_availability_operations.py} | 54 +- .../operations/_data_connectors_operations.py | 659 +++++++ ..._for_agriculture_extensions_operations.py} | 93 +- ...r_for_agriculture_resources_operations.py} | 508 ++--- .../operations/_extensions_operations.py | 236 ++- .../_operation_results_operations.py | 145 ++ .../mgmt/agrifood/operations/_operations.py | 16 +- ...private_endpoint_connections_operations.py | 302 ++- .../_private_link_resources_operations.py | 190 +- .../_solutions_discoverability_operations.py | 92 +- .../operations/_solutions_operations.py | 233 ++- ...check_name_availability_already_exists.py} | 9 +- ...lity_check_name_availability_available.py} | 9 +- ...py => data_connectors_create_or_update.py} | 25 +- .../data_connectors_delete.py | 41 + ...odels_delete.py => data_connectors_get.py} | 10 +- ...ource_group.py => data_connectors_list.py} | 8 +- ...manager_for_agriculture_extensions_get.py} | 9 +- ...anager_for_agriculture_extensions_list.py} | 7 +- ...agriculture_resources_create_or_update.py} | 11 +- ...anager_for_agriculture_resources_delete.py | 40 + ..._manager_for_agriculture_resources_get.py} | 9 +- ...lture_resources_list_by_resource_group.py} | 8 +- ...culture_resources_list_by_subscription.py} | 7 +- ...nager_for_agriculture_resources_update.py} | 11 +- .../extensions_create_or_update.py | 5 +- .../generated_samples/extensions_delete.py | 8 +- .../generated_samples/extensions_get.py | 5 +- ...ns_list_by_data_manager_for_agriculture.py | 42 + ...ion_result.py => operation_results_get.py} | 10 +- .../generated_samples/operations_list.py | 3 +- ...e_endpoint_connections_create_or_update.py | 7 +- .../private_endpoint_connections_delete.py | 8 +- .../private_endpoint_connections_get.py | 5 +- ...e_endpoint_connections_list_by_resource.py | 8 +- .../private_link_resources_get.py | 5 +- ...private_link_resources_list_by_resource.py | 8 +- .../solutions_create_or_update.py | 6 +- .../generated_samples/solutions_delete.py | 9 +- .../solutions_discoverability_get.py | 5 +- .../solutions_discoverability_list.py | 3 +- .../generated_samples/solutions_get.py | 6 +- .../generated_samples/solutions_list.py | 5 +- 67 files changed, 4140 insertions(+), 2689 deletions(-) rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/{_locations_operations.py => _check_name_availability_operations.py} (79%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_connectors_operations.py rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/{_farm_beats_extensions_operations.py => _data_manager_for_agriculture_extensions_operations.py} (76%) rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/{_farm_beats_models_operations.py => _data_manager_for_agriculture_resources_operations.py} (69%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operation_results_operations.py rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/{_locations_operations.py => _check_name_availability_operations.py} (81%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_connectors_operations.py rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/{_farm_beats_extensions_operations.py => _data_manager_for_agriculture_extensions_operations.py} (76%) rename sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/{_farm_beats_models_operations.py => _data_manager_for_agriculture_resources_operations.py} (68%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operation_results_operations.py rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{locations_check_name_availability_available.py => check_name_availability_check_name_availability_already_exists.py} (77%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{locations_check_name_availability_already_exists.py => check_name_availability_check_name_availability_available.py} (78%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_update_with_sensor.py => data_connectors_create_or_update.py} (64%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_delete.py rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_delete.py => data_connectors_get.py} (81%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_list_by_resource_group.py => data_connectors_list.py} (84%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_extensions_get.py => data_manager_for_agriculture_extensions_get.py} (81%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_extensions_list.py => data_manager_for_agriculture_extensions_list.py} (85%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_create_or_update.py => data_manager_for_agriculture_resources_create_or_update.py} (75%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_delete.py rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_get.py => data_manager_for_agriculture_resources_get.py} (81%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{extensions_list_by_farm_beats.py => data_manager_for_agriculture_resources_list_by_resource_group.py} (82%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_list_by_subscription.py => data_manager_for_agriculture_resources_list_by_subscription.py} (82%) rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_update.py => data_manager_for_agriculture_resources_update.py} (77%) create mode 100644 sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_data_manager_for_agriculture.py rename sdk/agrifood/azure-mgmt-agrifood/generated_samples/{farm_beats_models_get_operation_result.py => operation_results_get.py} (79%) diff --git a/sdk/agrifood/azure-mgmt-agrifood/_meta.json b/sdk/agrifood/azure-mgmt-agrifood/_meta.json index 8e1e4d466aa36..b22d0cce9de5a 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/_meta.json +++ b/sdk/agrifood/azure-mgmt-agrifood/_meta.json @@ -1,11 +1,11 @@ { - "commit": "e37a57df67daaa82f9c3758fc450bc8655812a08", - "repository_url": "https://github.com/Azure/azure-rest-api-specs", - "autorest": "3.9.2", + "commit": "5eecf01956bd620c49efeb628b50e79443ba9609", + "repository_url": "https://github.com/test-repo-billy/azure-rest-api-specs", + "autorest": "3.9.7", "use": [ - "@autorest/python@6.2.7", - "@autorest/modelerfour@4.24.3" + "@autorest/python@6.7.1", + "@autorest/modelerfour@4.26.2" ], - "autorest_command": "autorest specification/agrifood/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.2.7 --use=@autorest/modelerfour@4.24.3 --version=3.9.2 --version-tolerant=False", + "autorest_command": "autorest specification/agrifood/resource-manager/readme.md --generate-sample=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.7.1 --use=@autorest/modelerfour@4.26.2 --version=3.9.7 --version-tolerant=False", "readme": "specification/agrifood/resource-manager/readme.md" } \ No newline at end of file diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_agri_food_mgmt_client.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_agri_food_mgmt_client.py index 4e1035f7d188b..0f078a38800a1 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_agri_food_mgmt_client.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_agri_food_mgmt_client.py @@ -16,10 +16,12 @@ from ._configuration import AgriFoodMgmtClientConfiguration from ._serialization import Deserializer, Serializer from .operations import ( + CheckNameAvailabilityOperations, + DataConnectorsOperations, + DataManagerForAgricultureExtensionsOperations, + DataManagerForAgricultureResourcesOperations, ExtensionsOperations, - FarmBeatsExtensionsOperations, - FarmBeatsModelsOperations, - LocationsOperations, + OperationResultsOperations, Operations, PrivateEndpointConnectionsOperations, PrivateLinkResourcesOperations, @@ -33,16 +35,25 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """APIs documentation for Azure AgFoodPlatform Resource Provider Service. - + """APIs documentation for Microsoft Azure Data Manager for Agriculture Service. + + :ivar check_name_availability: CheckNameAvailabilityOperations operations + :vartype check_name_availability: + azure.mgmt.agrifood.operations.CheckNameAvailabilityOperations + :ivar data_connectors: DataConnectorsOperations operations + :vartype data_connectors: azure.mgmt.agrifood.operations.DataConnectorsOperations + :ivar data_manager_for_agriculture_extensions: DataManagerForAgricultureExtensionsOperations + operations + :vartype data_manager_for_agriculture_extensions: + azure.mgmt.agrifood.operations.DataManagerForAgricultureExtensionsOperations + :ivar data_manager_for_agriculture_resources: DataManagerForAgricultureResourcesOperations + operations + :vartype data_manager_for_agriculture_resources: + azure.mgmt.agrifood.operations.DataManagerForAgricultureResourcesOperations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.agrifood.operations.OperationResultsOperations :ivar extensions: ExtensionsOperations operations :vartype extensions: azure.mgmt.agrifood.operations.ExtensionsOperations - :ivar farm_beats_extensions: FarmBeatsExtensionsOperations operations - :vartype farm_beats_extensions: azure.mgmt.agrifood.operations.FarmBeatsExtensionsOperations - :ivar farm_beats_models: FarmBeatsModelsOperations operations - :vartype farm_beats_models: azure.mgmt.agrifood.operations.FarmBeatsModelsOperations - :ivar locations: LocationsOperations operations - :vartype locations: azure.mgmt.agrifood.operations.LocationsOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.agrifood.operations.Operations :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations @@ -57,13 +68,11 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword, azure.mgmt.agrifood.operations.SolutionsDiscoverabilityOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials.TokenCredential - :param solution_id: Solution Id of the solution. Required. - :type solution_id: str :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str :param base_url: Service URL. Default value is "https://management.azure.com". :type base_url: str - :keyword api_version: Api Version. Default value is "2021-09-01-preview". Note that overriding + :keyword api_version: Api Version. Default value is "2023-06-01-preview". Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no @@ -73,28 +82,31 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword, def __init__( self, credential: "TokenCredential", - solution_id: str, subscription_id: str, base_url: str = "https://management.azure.com", **kwargs: Any ) -> None: - self._config = AgriFoodMgmtClientConfiguration( - credential=credential, solution_id=solution_id, subscription_id=subscription_id, **kwargs - ) - self._client = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs) + self._config = AgriFoodMgmtClientConfiguration(credential=credential, subscription_id=subscription_id, **kwargs) + self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, config=self._config, **kwargs) client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) self._serialize.client_side_validation = False - self.extensions = ExtensionsOperations(self._client, self._config, self._serialize, self._deserialize) - self.farm_beats_extensions = FarmBeatsExtensionsOperations( + self.check_name_availability = CheckNameAvailabilityOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.data_connectors = DataConnectorsOperations(self._client, self._config, self._serialize, self._deserialize) + self.data_manager_for_agriculture_extensions = DataManagerForAgricultureExtensionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.data_manager_for_agriculture_resources = DataManagerForAgricultureResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.farm_beats_models = FarmBeatsModelsOperations( + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.extensions = ExtensionsOperations(self._client, self._config, self._serialize, self._deserialize) self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize @@ -136,5 +148,5 @@ def __enter__(self) -> "AgriFoodMgmtClient": self._client.__enter__() return self - def __exit__(self, *exc_details) -> None: + def __exit__(self, *exc_details: Any) -> None: self._client.__exit__(*exc_details) diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_configuration.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_configuration.py index a1a4e42c2ea77..f3e4de5660edf 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_configuration.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_configuration.py @@ -6,7 +6,6 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -import sys from typing import Any, TYPE_CHECKING from azure.core.configuration import Configuration @@ -15,11 +14,6 @@ from ._version import VERSION -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports - if TYPE_CHECKING: # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials import TokenCredential @@ -33,28 +27,23 @@ class AgriFoodMgmtClientConfiguration(Configuration): # pylint: disable=too-man :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials.TokenCredential - :param solution_id: Solution Id of the solution. Required. - :type solution_id: str :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-09-01-preview". Note that overriding + :keyword api_version: Api Version. Default value is "2023-06-01-preview". Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str """ - def __init__(self, credential: "TokenCredential", solution_id: str, subscription_id: str, **kwargs: Any) -> None: + def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: super(AgriFoodMgmtClientConfiguration, self).__init__(**kwargs) - api_version: Literal["2021-09-01-preview"] = kwargs.pop("api_version", "2021-09-01-preview") + api_version: str = kwargs.pop("api_version", "2023-06-01-preview") if credential is None: raise ValueError("Parameter 'credential' must not be None.") - if solution_id is None: - raise ValueError("Parameter 'solution_id' must not be None.") if subscription_id is None: raise ValueError("Parameter 'subscription_id' must not be None.") self.credential = credential - self.solution_id = solution_id self.subscription_id = subscription_id self.api_version = api_version self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_serialization.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_serialization.py index 2c170e28dbca2..4bae2292227bd 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_serialization.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_serialization.py @@ -38,7 +38,22 @@ import re import sys import codecs -from typing import Optional, Union, AnyStr, IO, Mapping +from typing import ( + Dict, + Any, + cast, + Optional, + Union, + AnyStr, + IO, + Mapping, + Callable, + TypeVar, + MutableMapping, + Type, + List, + Mapping, +) try: from urllib import quote # type: ignore @@ -48,12 +63,14 @@ import isodate # type: ignore -from typing import Dict, Any, cast - from azure.core.exceptions import DeserializationError, SerializationError, raise_with_traceback +from azure.core.serialization import NULL as AzureCoreNull _BOM = codecs.BOM_UTF8.decode(encoding="utf-8") +ModelType = TypeVar("ModelType", bound="Model") +JSON = MutableMapping[str, Any] + class RawDeserializer: @@ -277,8 +294,8 @@ class Model(object): _attribute_map: Dict[str, Dict[str, Any]] = {} _validation: Dict[str, Dict[str, Any]] = {} - def __init__(self, **kwargs): - self.additional_properties = {} + def __init__(self, **kwargs: Any) -> None: + self.additional_properties: Dict[str, Any] = {} for k in kwargs: 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__) @@ -287,25 +304,25 @@ def __init__(self, **kwargs): else: setattr(self, k, kwargs[k]) - def __eq__(self, other): + def __eq__(self, other: Any) -> bool: """Compare objects by comparing all attributes.""" if isinstance(other, self.__class__): return self.__dict__ == other.__dict__ return False - def __ne__(self, other): + def __ne__(self, other: Any) -> bool: """Compare objects by comparing all attributes.""" return not self.__eq__(other) - def __str__(self): + def __str__(self) -> str: return str(self.__dict__) @classmethod - def enable_additional_properties_sending(cls): + def enable_additional_properties_sending(cls) -> None: cls._attribute_map["additional_properties"] = {"key": "", "type": "{object}"} @classmethod - def is_xml_model(cls): + def is_xml_model(cls) -> bool: try: cls._xml_map # type: ignore except AttributeError: @@ -322,7 +339,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=False, **kwargs): + def serialize(self, keep_readonly: bool = False, **kwargs: Any) -> JSON: """Return the JSON that would be sent to azure from this model. This is an alias to `as_dict(full_restapi_key_transformer, keep_readonly=False)`. @@ -336,8 +353,13 @@ def serialize(self, keep_readonly=False, **kwargs): serializer = Serializer(self._infer_class_models()) return serializer._serialize(self, keep_readonly=keep_readonly, **kwargs) - def as_dict(self, keep_readonly=True, key_transformer=attribute_transformer, **kwargs): - """Return a dict that can be JSONify using json.dump. + def as_dict( + self, + keep_readonly: bool = True, + key_transformer: Callable[[str, Dict[str, Any], Any], Any] = attribute_transformer, + **kwargs: Any + ) -> JSON: + """Return a dict that can be serialized using json.dump. Advanced usage might optionally use a callback as parameter: @@ -384,7 +406,7 @@ def _infer_class_models(cls): return client_models @classmethod - def deserialize(cls, data, content_type=None): + def deserialize(cls: Type[ModelType], data: Any, content_type: Optional[str] = None) -> ModelType: """Parse a str using the RestAPI syntax and return a model. :param str data: A str using RestAPI structure. JSON by default. @@ -396,7 +418,12 @@ def deserialize(cls, data, content_type=None): return deserializer(cls.__name__, data, content_type=content_type) @classmethod - def from_dict(cls, data, key_extractors=None, content_type=None): + def from_dict( + cls: Type[ModelType], + data: Any, + key_extractors: Optional[Callable[[str, Dict[str, Any], Any], Any]] = None, + content_type: Optional[str] = None, + ) -> ModelType: """Parse a dict using given key extractor return a model. By default consider key @@ -409,8 +436,8 @@ def from_dict(cls, data, key_extractors=None, content_type=None): :raises: DeserializationError if something went wrong """ deserializer = Deserializer(cls._infer_class_models()) - deserializer.key_extractors = ( - [ + deserializer.key_extractors = ( # type: ignore + [ # type: ignore attribute_key_case_insensitive_extractor, rest_key_case_insensitive_extractor, last_rest_key_case_insensitive_extractor, @@ -518,7 +545,7 @@ class Serializer(object): "multiple": lambda x, y: x % y != 0, } - def __init__(self, classes=None): + def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None): self.serialize_type = { "iso-8601": Serializer.serialize_iso, "rfc-1123": Serializer.serialize_rfc, @@ -534,7 +561,7 @@ def __init__(self, classes=None): "[]": self.serialize_iter, "{}": self.serialize_dict, } - self.dependencies = dict(classes) if classes else {} + self.dependencies: Dict[str, Type[ModelType]] = dict(classes) if classes else {} self.key_transformer = full_restapi_key_transformer self.client_side_validation = True @@ -602,7 +629,7 @@ def _serialize(self, target_obj, data_type=None, **kwargs): if xml_desc.get("attr", False): if xml_ns: ET.register_namespace(xml_prefix, xml_ns) - xml_name = "{}{}".format(xml_ns, xml_name) + xml_name = "{{{}}}{}".format(xml_ns, xml_name) serialized.set(xml_name, new_attr) # type: ignore continue if xml_desc.get("text", False): @@ -626,8 +653,7 @@ def _serialize(self, target_obj, data_type=None, **kwargs): serialized.append(local_node) # type: ignore else: # JSON for k in reversed(keys): # type: ignore - unflattened = {k: new_attr} - new_attr = unflattened + new_attr = {k: new_attr} _new_attr = new_attr _serialized = serialized @@ -636,8 +662,9 @@ def _serialize(self, target_obj, data_type=None, **kwargs): _serialized.update(_new_attr) # type: ignore _new_attr = _new_attr[k] # type: ignore _serialized = _serialized[k] - except ValueError: - continue + except ValueError as err: + if isinstance(err, SerializationError): + raise except (AttributeError, KeyError, TypeError) as err: msg = "Attribute {} in object {} cannot be serialized.\n{}".format(attr_name, class_name, str(target_obj)) @@ -656,8 +683,8 @@ def body(self, data, data_type, **kwargs): """ # Just in case this is a dict - internal_data_type = data_type.strip("[]{}") - internal_data_type = self.dependencies.get(internal_data_type, None) + internal_data_type_str = data_type.strip("[]{}") + internal_data_type = self.dependencies.get(internal_data_type_str, None) try: is_xml_model_serialization = kwargs["is_xml"] except KeyError: @@ -715,6 +742,8 @@ def query(self, name, data, data_type, **kwargs): :param 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 :raises: TypeError if serialization fails. :raises: ValueError if data is None @@ -723,10 +752,8 @@ def query(self, name, data, data_type, **kwargs): # Treat the list aside, since we don't want to encode the div separator if data_type.startswith("["): internal_data_type = data_type[1:-1] - data = [self.serialize_data(d, internal_data_type, **kwargs) if d is not None else "" for d in data] - if not kwargs.get("skip_quote", False): - data = [quote(str(d), safe="") for d in data] - return str(self.serialize_iter(data, internal_data_type, **kwargs)) + do_quote = not kwargs.get("skip_quote", False) + return str(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) @@ -777,6 +804,8 @@ def serialize_data(self, data, data_type, **kwargs): raise ValueError("No value for given attribute") try: + if data is AzureCoreNull: + return None if data_type in self.basic_types.values(): return self.serialize_basic(data, data_type, **kwargs) @@ -863,6 +892,8 @@ def serialize_iter(self, data, iter_type, div=None, **kwargs): 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 """ if isinstance(data, str): @@ -875,9 +906,14 @@ def serialize_iter(self, data, iter_type, div=None, **kwargs): for d in data: try: serialized.append(self.serialize_data(d, iter_type, **kwargs)) - except ValueError: + except ValueError as err: + if isinstance(err, SerializationError): + raise serialized.append(None) + if kwargs.get("do_quote", False): + serialized = ["" if s is None else quote(str(s), safe="") for s in serialized] + if div: serialized = ["" if s is None else str(s) for s in serialized] serialized = div.join(serialized) @@ -922,7 +958,9 @@ def serialize_dict(self, attr, dict_type, **kwargs): for key, value in attr.items(): try: serialized[self.serialize_unicode(key)] = self.serialize_data(value, dict_type, **kwargs) - except ValueError: + except ValueError as err: + if isinstance(err, SerializationError): + raise serialized[self.serialize_unicode(key)] = None if "xml" in serialization_ctxt: @@ -1161,7 +1199,8 @@ def rest_key_extractor(attr, attr_desc, data): working_data = data while "." in key: - dict_keys = _FLATTEN.split(key) + # Need the cast, as for some reasons "split" is typed as list[str | Any] + dict_keys = cast(List[str], _FLATTEN.split(key)) if len(dict_keys) == 1: key = _decode_attribute_map_key(dict_keys[0]) break @@ -1242,7 +1281,7 @@ def _extract_name_from_internal_type(internal_type): xml_name = internal_type_xml_map.get("name", internal_type.__name__) xml_ns = internal_type_xml_map.get("ns", None) if xml_ns: - xml_name = "{}{}".format(xml_ns, xml_name) + xml_name = "{{{}}}{}".format(xml_ns, xml_name) return xml_name @@ -1266,7 +1305,7 @@ def xml_key_extractor(attr, attr_desc, data): # Integrate namespace if necessary xml_ns = xml_desc.get("ns", internal_type_xml_map.get("ns", None)) if xml_ns: - xml_name = "{}{}".format(xml_ns, xml_name) + xml_name = "{{{}}}{}".format(xml_ns, xml_name) # If it's an attribute, that's simple if xml_desc.get("attr", False): @@ -1332,7 +1371,7 @@ class Deserializer(object): valid_date = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}" r"\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?") - def __init__(self, classes=None): + def __init__(self, classes: Optional[Mapping[str, Type[ModelType]]] = None): self.deserialize_type = { "iso-8601": Deserializer.deserialize_iso, "rfc-1123": Deserializer.deserialize_rfc, @@ -1352,7 +1391,7 @@ def __init__(self, classes=None): "duration": (isodate.Duration, datetime.timedelta), "iso-8601": (datetime.datetime), } - self.dependencies = dict(classes) if classes else {} + self.dependencies: Dict[str, Type[ModelType]] = 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 @@ -1471,7 +1510,7 @@ def _classify_target(self, target, data): Once classification has been determined, initialize object. :param str target: The target object type to deserialize to. - :param str/dict data: The response data to deseralize. + :param str/dict data: The response data to deserialize. """ if target is None: return None, None @@ -1486,7 +1525,7 @@ def _classify_target(self, target, data): target = target._classify(data, self.dependencies) except AttributeError: pass # Target is not a Model, no classify - return target, target.__class__.__name__ + return target, target.__class__.__name__ # type: ignore def failsafe_deserialize(self, target_obj, data, content_type=None): """Ignores any errors encountered in deserialization, @@ -1496,7 +1535,7 @@ def failsafe_deserialize(self, target_obj, data, content_type=None): a deserialization error. :param str target_obj: The target object type to deserialize to. - :param str/dict data: The response data to deseralize. + :param str/dict data: The response data to deserialize. :param str content_type: Swagger "produces" if available. """ try: diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_vendor.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_vendor.py index 9aad73fc743e7..0dafe0e287ff1 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_vendor.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_vendor.py @@ -14,14 +14,3 @@ def _convert_request(request, files=None): if files: request.set_formdata_body(files) return request - - -def _format_url_section(template, **kwargs): - components = template.split("/") - while components: - try: - return template.format(**kwargs) - except KeyError as key: - formatted_components = template.split("/") - components = [c for c in formatted_components if "{}".format(key.args[0]) not in c] - template = "/".join(components) diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_version.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_version.py index 20971492f1291..e5754a47ce68f 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_version.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0b3" +VERSION = "1.0.0b1" diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_agri_food_mgmt_client.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_agri_food_mgmt_client.py index 21cfca382af86..3499906d8c5dc 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_agri_food_mgmt_client.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_agri_food_mgmt_client.py @@ -16,10 +16,12 @@ from .._serialization import Deserializer, Serializer from ._configuration import AgriFoodMgmtClientConfiguration from .operations import ( + CheckNameAvailabilityOperations, + DataConnectorsOperations, + DataManagerForAgricultureExtensionsOperations, + DataManagerForAgricultureResourcesOperations, ExtensionsOperations, - FarmBeatsExtensionsOperations, - FarmBeatsModelsOperations, - LocationsOperations, + OperationResultsOperations, Operations, PrivateEndpointConnectionsOperations, PrivateLinkResourcesOperations, @@ -33,17 +35,25 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """APIs documentation for Azure AgFoodPlatform Resource Provider Service. - + """APIs documentation for Microsoft Azure Data Manager for Agriculture Service. + + :ivar check_name_availability: CheckNameAvailabilityOperations operations + :vartype check_name_availability: + azure.mgmt.agrifood.aio.operations.CheckNameAvailabilityOperations + :ivar data_connectors: DataConnectorsOperations operations + :vartype data_connectors: azure.mgmt.agrifood.aio.operations.DataConnectorsOperations + :ivar data_manager_for_agriculture_extensions: DataManagerForAgricultureExtensionsOperations + operations + :vartype data_manager_for_agriculture_extensions: + azure.mgmt.agrifood.aio.operations.DataManagerForAgricultureExtensionsOperations + :ivar data_manager_for_agriculture_resources: DataManagerForAgricultureResourcesOperations + operations + :vartype data_manager_for_agriculture_resources: + azure.mgmt.agrifood.aio.operations.DataManagerForAgricultureResourcesOperations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.agrifood.aio.operations.OperationResultsOperations :ivar extensions: ExtensionsOperations operations :vartype extensions: azure.mgmt.agrifood.aio.operations.ExtensionsOperations - :ivar farm_beats_extensions: FarmBeatsExtensionsOperations operations - :vartype farm_beats_extensions: - azure.mgmt.agrifood.aio.operations.FarmBeatsExtensionsOperations - :ivar farm_beats_models: FarmBeatsModelsOperations operations - :vartype farm_beats_models: azure.mgmt.agrifood.aio.operations.FarmBeatsModelsOperations - :ivar locations: LocationsOperations operations - :vartype locations: azure.mgmt.agrifood.aio.operations.LocationsOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.agrifood.aio.operations.Operations :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations @@ -59,13 +69,11 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword, azure.mgmt.agrifood.aio.operations.SolutionsDiscoverabilityOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param solution_id: Solution Id of the solution. Required. - :type solution_id: str :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str :param base_url: Service URL. Default value is "https://management.azure.com". :type base_url: str - :keyword api_version: Api Version. Default value is "2021-09-01-preview". Note that overriding + :keyword api_version: Api Version. Default value is "2023-06-01-preview". Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no @@ -75,28 +83,31 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword, def __init__( self, credential: "AsyncTokenCredential", - solution_id: str, subscription_id: str, base_url: str = "https://management.azure.com", **kwargs: Any ) -> None: - self._config = AgriFoodMgmtClientConfiguration( - credential=credential, solution_id=solution_id, subscription_id=subscription_id, **kwargs - ) - self._client = AsyncARMPipelineClient(base_url=base_url, config=self._config, **kwargs) + self._config = AgriFoodMgmtClientConfiguration(credential=credential, subscription_id=subscription_id, **kwargs) + self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, config=self._config, **kwargs) client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) self._serialize.client_side_validation = False - self.extensions = ExtensionsOperations(self._client, self._config, self._serialize, self._deserialize) - self.farm_beats_extensions = FarmBeatsExtensionsOperations( + self.check_name_availability = CheckNameAvailabilityOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.data_connectors = DataConnectorsOperations(self._client, self._config, self._serialize, self._deserialize) + self.data_manager_for_agriculture_extensions = DataManagerForAgricultureExtensionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.data_manager_for_agriculture_resources = DataManagerForAgricultureResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.farm_beats_models = FarmBeatsModelsOperations( + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.extensions = ExtensionsOperations(self._client, self._config, self._serialize, self._deserialize) self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize @@ -138,5 +149,5 @@ async def __aenter__(self) -> "AgriFoodMgmtClient": await self._client.__aenter__() return self - async def __aexit__(self, *exc_details) -> None: + async def __aexit__(self, *exc_details: Any) -> None: await self._client.__aexit__(*exc_details) diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_configuration.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_configuration.py index 3c076b11b9622..8b127f2e36b57 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_configuration.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/_configuration.py @@ -6,7 +6,6 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -import sys from typing import Any, TYPE_CHECKING from azure.core.configuration import Configuration @@ -15,11 +14,6 @@ from .._version import VERSION -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports - if TYPE_CHECKING: # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials_async import AsyncTokenCredential @@ -33,30 +27,23 @@ class AgriFoodMgmtClientConfiguration(Configuration): # pylint: disable=too-man :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param solution_id: Solution Id of the solution. Required. - :type solution_id: str :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-09-01-preview". Note that overriding + :keyword api_version: Api Version. Default value is "2023-06-01-preview". Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str """ - def __init__( - self, credential: "AsyncTokenCredential", solution_id: str, subscription_id: str, **kwargs: Any - ) -> None: + def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: super(AgriFoodMgmtClientConfiguration, self).__init__(**kwargs) - api_version: Literal["2021-09-01-preview"] = kwargs.pop("api_version", "2021-09-01-preview") + api_version: str = kwargs.pop("api_version", "2023-06-01-preview") if credential is None: raise ValueError("Parameter 'credential' must not be None.") - if solution_id is None: - raise ValueError("Parameter 'solution_id' must not be None.") if subscription_id is None: raise ValueError("Parameter 'subscription_id' must not be None.") self.credential = credential - self.solution_id = solution_id self.subscription_id = subscription_id self.api_version = api_version self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/__init__.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/__init__.py index a699d321e5688..d3a4dfdea6586 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/__init__.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/__init__.py @@ -6,10 +6,12 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- +from ._check_name_availability_operations import CheckNameAvailabilityOperations +from ._data_connectors_operations import DataConnectorsOperations +from ._data_manager_for_agriculture_extensions_operations import DataManagerForAgricultureExtensionsOperations +from ._data_manager_for_agriculture_resources_operations import DataManagerForAgricultureResourcesOperations +from ._operation_results_operations import OperationResultsOperations from ._extensions_operations import ExtensionsOperations -from ._farm_beats_extensions_operations import FarmBeatsExtensionsOperations -from ._farm_beats_models_operations import FarmBeatsModelsOperations -from ._locations_operations import LocationsOperations from ._operations import Operations from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations from ._private_link_resources_operations import PrivateLinkResourcesOperations @@ -21,10 +23,12 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ + "CheckNameAvailabilityOperations", + "DataConnectorsOperations", + "DataManagerForAgricultureExtensionsOperations", + "DataManagerForAgricultureResourcesOperations", + "OperationResultsOperations", "ExtensionsOperations", - "FarmBeatsExtensionsOperations", - "FarmBeatsModelsOperations", - "LocationsOperations", "Operations", "PrivateEndpointConnectionsOperations", "PrivateLinkResourcesOperations", diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_locations_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_check_name_availability_operations.py similarity index 79% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_locations_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_check_name_availability_operations.py index fca6f6e1e4f41..deb10410caec9 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_locations_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_check_name_availability_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload from azure.core.exceptions import ( @@ -26,24 +26,20 @@ from ... import models as _models from ..._vendor import _convert_request -from ...operations._locations_operations import build_check_name_availability_request +from ...operations._check_name_availability_operations import build_check_name_availability_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] -class LocationsOperations: +class CheckNameAvailabilityOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.aio.AgriFoodMgmtClient`'s - :attr:`locations` attribute. + :attr:`check_name_availability` attribute. """ models = _models @@ -57,12 +53,16 @@ def __init__(self, *args, **kwargs) -> None: @overload async def check_name_availability( - self, body: _models.CheckNameAvailabilityRequest, *, content_type: str = "application/json", **kwargs: Any + self, + name_availability_request: _models.CheckNameAvailabilityRequest, + *, + content_type: str = "application/json", + **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Required. - :type body: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest + :param name_availability_request: NameAvailabilityRequest object. Required. + :type name_availability_request: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -74,12 +74,12 @@ async def check_name_availability( @overload async def check_name_availability( - self, body: IO, *, content_type: str = "application/json", **kwargs: Any + self, name_availability_request: IO, *, content_type: str = "application/json", **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Required. - :type body: IO + :param name_availability_request: NameAvailabilityRequest object. Required. + :type name_availability_request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -91,12 +91,13 @@ async def check_name_availability( @distributed_trace_async async def check_name_availability( - self, body: Union[_models.CheckNameAvailabilityRequest, IO], **kwargs: Any + self, name_availability_request: Union[_models.CheckNameAvailabilityRequest, IO], **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest or IO + :param name_availability_request: NameAvailabilityRequest object. Is either a + CheckNameAvailabilityRequest type or a IO type. Required. + :type name_availability_request: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -116,19 +117,17 @@ async def check_name_availability( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.CheckNameAvailabilityResponse] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(name_availability_request, (IOBase, bytes)): + _content = name_availability_request else: - _json = self._serialize.body(body, "CheckNameAvailabilityRequest") + _json = self._serialize.body(name_availability_request, "CheckNameAvailabilityRequest") request = build_check_name_availability_request( subscription_id=self._config.subscription_id, @@ -143,8 +142,9 @@ async def check_name_availability( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_connectors_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_connectors_operations.py new file mode 100644 index 0000000000000..0f77e0ec30987 --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_connectors_operations.py @@ -0,0 +1,468 @@ +# 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 +from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, overload +import urllib.parse + +from azure.core.async_paging import AsyncItemPaged, AsyncList +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.pipeline.transport import AsyncHttpResponse +from azure.core.rest import 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._data_connectors_operations import ( + build_create_or_update_request, + build_delete_request, + build_get_request, + build_list_request, +) + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] + + +class DataConnectorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.agrifood.aio.AgriFoodMgmtClient`'s + :attr:`data_connectors` 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_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + **kwargs: Any + ) -> _models.DataConnector: + """Get specific Data Connector resource by DataConnectorName. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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.DataConnector] = kwargs.pop("cls", None) + + request = build_get_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_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) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("DataConnector", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized + + get.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @overload + async def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: _models.DataConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Required. + :type body: ~azure.mgmt.agrifood.models.DataConnector + :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: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: IO, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Required. + :type body: IO + :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: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: Union[_models.DataConnector, IO], + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Is either a DataConnector type or a IO + type. Required. + :type body: ~azure.mgmt.agrifood.models.DataConnector 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 + :return: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(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.DataConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _json = None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _json = self._serialize.body(body, "DataConnector") + + request = build_create_or_update_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + template_url=self.create_or_update.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if response.status_code == 200: + deserialized = self._deserialize("DataConnector", pipeline_response) + + if response.status_code == 201: + deserialized = self._deserialize("DataConnector", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + create_or_update.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @distributed_trace_async + async def delete( # pylint: disable=inconsistent-return-statements + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + **kwargs: Any + ) -> None: + """Delete a Data Connectors with given dataConnector name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 400: lambda response: HttpResponseError(response=response, error_format=ARMErrorFormat), + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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) + + request = build_delete_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.delete.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) + + delete.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @distributed_trace + def list( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + max_page_size: int = 50, + skip_token: Optional[str] = None, + **kwargs: Any + ) -> AsyncIterable["_models.DataConnector"]: + """Lists the Data Connector Credentials for MADMA instance. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param max_page_size: Maximum number of items needed (inclusive). + Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. + :type max_page_size: int + :param skip_token: Continuation token for getting next set of results. 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 DataConnector or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.DataConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = 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.DataConnectorListResponse] = kwargs.pop("cls", None) + + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + request = build_list_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + max_page_size=max_page_size, + skip_token=skip_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) + + 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 = _convert_request(request) + request.url = self._client.format_url(request.url) + request.method = "GET" + return request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("DataConnectorListResponse", 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) + + list.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_extensions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_extensions_operations.py similarity index 76% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_extensions_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_extensions_operations.py index 6e928ef680e8e..4ec8f276d213e 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_extensions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_extensions_operations.py @@ -6,7 +6,6 @@ # 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, List, Optional, TypeVar import urllib.parse @@ -29,24 +28,20 @@ from ... import models as _models from ..._vendor import _convert_request -from ...operations._farm_beats_extensions_operations import build_get_request, build_list_request +from ...operations._data_manager_for_agriculture_extensions_operations import build_get_request, build_list_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] -class FarmBeatsExtensionsOperations: +class DataManagerForAgricultureExtensionsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.aio.AgriFoodMgmtClient`'s - :attr:`farm_beats_extensions` attribute. + :attr:`data_manager_for_agriculture_extensions` attribute. """ models = _models @@ -67,12 +62,13 @@ def list( publisher_ids: Optional[List[str]] = None, max_page_size: int = 50, **kwargs: Any - ) -> AsyncIterable["_models.FarmBeatsExtension"]: - """Get list of farmBeats extension. + ) -> AsyncIterable["_models.DataManagerForAgricultureExtension"]: + """Get list of Data Manager For Agriculture extension. - :param farm_beats_extension_ids: FarmBeatsExtension ids. Default value is None. + :param farm_beats_extension_ids: DataManagerForAgricultureExtension ids. Default value is None. :type farm_beats_extension_ids: list[str] - :param farm_beats_extension_names: FarmBeats extension names. Default value is None. + :param farm_beats_extension_names: DataManagerForAgriculture extension names. Default value is + None. :type farm_beats_extension_names: list[str] :param extension_categories: Extension categories. Default value is None. :type extension_categories: list[str] @@ -82,17 +78,17 @@ def list( Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. :type max_page_size: int :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either FarmBeatsExtension or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.FarmBeatsExtension] + :return: An iterator like instance of either DataManagerForAgricultureExtension or the result + of cls(response) + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsExtensionListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureExtensionListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -138,7 +134,7 @@ def prepare_request(next_link=None): return request async def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsExtensionListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureExtensionListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -147,8 +143,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -164,14 +161,17 @@ async def get_next(next_link=None): list.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions"} @distributed_trace_async - async def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.FarmBeatsExtension: - """Get farmBeats extension. - - :param farm_beats_extension_id: farmBeatsExtensionId to be queried. Required. - :type farm_beats_extension_id: str + async def get( + self, data_manager_for_agriculture_extension_id: str, **kwargs: Any + ) -> _models.DataManagerForAgricultureExtension: + """Get Data Manager For Agriculture extension. + + :param data_manager_for_agriculture_extension_id: dataManagerForAgricultureExtensionId to be + queried. Required. + :type data_manager_for_agriculture_extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeatsExtension or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeatsExtension + :return: DataManagerForAgricultureExtension or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -185,13 +185,11 @@ async def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.Farm _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsExtension] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureExtension] = kwargs.pop("cls", None) request = build_get_request( - farm_beats_extension_id=farm_beats_extension_id, + data_manager_for_agriculture_extension_id=data_manager_for_agriculture_extension_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -200,8 +198,9 @@ async def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.Farm request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -211,11 +210,13 @@ async def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.Farm error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeatsExtension", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureExtension", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized - get.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{farmBeatsExtensionId}"} + get.metadata = { + "url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{dataManagerForAgricultureExtensionId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_models_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_resources_operations.py similarity index 69% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_models_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_resources_operations.py index ea5bccff0434c..963ddc6d81d38 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_farm_beats_models_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_data_manager_for_agriculture_resources_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload import urllib.parse @@ -31,32 +31,27 @@ from ... import models as _models from ..._vendor import _convert_request -from ...operations._farm_beats_models_operations import ( +from ...operations._data_manager_for_agriculture_resources_operations import ( build_create_or_update_request, build_delete_request, - build_get_operation_result_request, build_get_request, build_list_by_resource_group_request, build_list_by_subscription_request, build_update_request, ) -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] -class FarmBeatsModelsOperations: +class DataManagerForAgricultureResourcesOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.aio.AgriFoodMgmtClient`'s - :attr:`farm_beats_models` attribute. + :attr:`data_manager_for_agriculture_resources` attribute. """ models = _models @@ -69,17 +64,20 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace_async - async def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any) -> _models.FarmBeats: - """Get FarmBeats resource. + async def get( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.DataManagerForAgriculture: + """Get DataManagerForAgriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -93,14 +91,12 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeats] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, template_url=self.get.metadata["url"], @@ -110,8 +106,9 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -121,7 +118,7 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) @@ -129,34 +126,36 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @overload async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: _models.FarmBeats, + data_manager_for_agriculture_resource_name: str, + request: _models.DataManagerForAgriculture, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeats + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. + Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :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: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ @@ -164,50 +163,57 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: IO, + data_manager_for_agriculture_resource_name: str, + request: IO, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Required. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. + Required. + :type request: IO :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: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace_async async def create_or_update( - self, resource_group_name: str, farm_beats_resource_name: str, body: Union[_models.FarmBeats, IO], **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgriculture, IO], + **kwargs: Any + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Is either a model type or a IO - type. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeats or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. Is + either a DataManagerForAgriculture type or a IO type. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgriculture 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 - :return: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -221,23 +227,21 @@ async def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "FarmBeats") + _json = self._serialize.body(request, "DataManagerForAgriculture") request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -250,8 +254,9 @@ async def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -262,10 +267,10 @@ async def create_or_update( raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if response.status_code == 201: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -273,16 +278,16 @@ async def create_or_update( return deserialized # type: ignore create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } async def _update_initial( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Union[_models.FarmBeatsUpdateRequestModel, IO], + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgricultureUpdateRequestModel, IO], **kwargs: Any - ) -> Optional[_models.FarmBeats]: + ) -> _models.DataManagerForAgriculture: error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -294,23 +299,21 @@ async def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats]] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "FarmBeatsUpdateRequestModel") + _json = self._serialize.body(request, "DataManagerForAgricultureUpdateRequestModel") request = build_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -323,8 +326,9 @@ async def _update_initial( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -334,42 +338,44 @@ async def _update_initial( error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = None response_headers = {} if response.status_code == 200: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if response.status_code == 202: response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) + if cls: - return cls(pipeline_response, deserialized, response_headers) + return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + return deserialized # type: ignore _update_initial.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @overload async def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: _models.FarmBeatsUpdateRequestModel, + data_manager_for_agriculture_resource_name: str, + request: _models.DataManagerForAgricultureUpdateRequestModel, *, content_type: str = "application/json", **kwargs: Any - ) -> AsyncLROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> AsyncLROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeatsUpdateRequestModel + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateRequestModel :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -381,9 +387,10 @@ async def begin_update( :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 FarmBeats or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of AsyncLROPoller that returns either DataManagerForAgriculture or the + result of cls(response) + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -391,21 +398,22 @@ async def begin_update( async def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: IO, + data_manager_for_agriculture_resource_name: str, + request: IO, *, content_type: str = "application/json", **kwargs: Any - ) -> AsyncLROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> AsyncLROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Required. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Required. + :type request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -417,9 +425,10 @@ async def begin_update( :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 FarmBeats or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of AsyncLROPoller that returns either DataManagerForAgriculture or the + result of cls(response) + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -427,19 +436,21 @@ async def begin_update( async def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Union[_models.FarmBeatsUpdateRequestModel, IO], + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgricultureUpdateRequestModel, IO], **kwargs: Any - ) -> AsyncLROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> AsyncLROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeatsUpdateRequestModel or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Is either a DataManagerForAgricultureUpdateRequestModel type or + a IO type. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateRequestModel or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -451,27 +462,26 @@ async def begin_update( :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 FarmBeats or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of AsyncLROPoller that returns either DataManagerForAgriculture or the + result of cls(response) + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = await self._update_initial( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - body=body, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + request=request, api_version=api_version, content_type=content_type, cls=lambda x, y, z: x, @@ -482,7 +492,7 @@ async def begin_update( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized @@ -505,20 +515,21 @@ def get_long_running_output(pipeline_response): return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore begin_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @distributed_trace_async async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any ) -> None: - """Delete a FarmBeats resource. + """Delete a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) :rtype: None @@ -535,14 +546,12 @@ async def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, template_url=self.delete.metadata["url"], @@ -552,8 +561,9 @@ async def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -567,14 +577,14 @@ async def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @distributed_trace def list_by_subscription( self, max_page_size: int = 50, skip_token: Optional[str] = None, **kwargs: Any - ) -> AsyncIterable["_models.FarmBeats"]: - """Lists the FarmBeats instances for a subscription. + ) -> AsyncIterable["_models.DataManagerForAgriculture"]: + """Lists the DataManagerForAgriculture instances for a subscription. :param max_page_size: Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. @@ -582,17 +592,17 @@ def list_by_subscription( :param skip_token: Skip token for getting next set of results. 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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.FarmBeats] + :return: An iterator like instance of either DataManagerForAgriculture or the result of + cls(response) + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -636,7 +646,7 @@ def prepare_request(next_link=None): return request async def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -645,8 +655,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -666,8 +677,8 @@ async def get_next(next_link=None): @distributed_trace def list_by_resource_group( self, resource_group_name: str, max_page_size: int = 50, skip_token: Optional[str] = None, **kwargs: Any - ) -> AsyncIterable["_models.FarmBeats"]: - """Lists the FarmBeats instances for a resource group. + ) -> AsyncIterable["_models.DataManagerForAgriculture"]: + """Lists the DataManagerForAgriculture instances for a resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. @@ -678,17 +689,17 @@ def list_by_resource_group( :param skip_token: Continuation token for getting next set of results. 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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.FarmBeats] + :return: An iterator like instance of either DataManagerForAgriculture or the result of + cls(response) + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -733,7 +744,7 @@ def prepare_request(next_link=None): return request async def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -742,8 +753,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -759,72 +771,3 @@ async def get_next(next_link=None): list_by_resource_group.metadata = { "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats" } - - @distributed_trace_async - async def get_operation_result( - self, resource_group_name: str, farm_beats_resource_name: str, operation_results_id: str, **kwargs: Any - ) -> _models.ArmAsyncOperation: - """Get operationResults for a FarmBeats resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param operation_results_id: The operation results id. Required. - :type operation_results_id: str - :keyword callable cls: A custom type or function that will be passed the direct response - :return: ArmAsyncOperation or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.ArmAsyncOperation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.ArmAsyncOperation] = kwargs.pop("cls", None) - - request = build_get_operation_result_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - operation_results_id=operation_results_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.get_operation_result.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - request.url = self._client.format_url(request.url) - - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmAsyncOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - - get_operation_result.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/operationResults/{operationResultsId}" - } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_extensions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_extensions_operations.py index 619d7707dc38d..c578d1cd811e9 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_extensions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_extensions_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, AsyncIterable, Callable, Dict, IO, List, Optional, TypeVar, Union, overload import urllib.parse @@ -33,13 +33,9 @@ build_create_or_update_request, build_delete_request, build_get_request, - build_list_by_farm_beats_request, + build_list_by_data_manager_for_agriculture_request, ) -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -67,22 +63,23 @@ def __init__(self, *args, **kwargs) -> None: async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[_models.ExtensionInstallationRequest] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :param request_body: Extension resource request body. Default value is None. @@ -100,22 +97,23 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[IO] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :param request_body: Extension resource request body. Default value is None. @@ -133,24 +131,25 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[Union[_models.ExtensionInstallationRequest, IO]] = None, **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str - :param request_body: Extension resource request body. Is either a model type or a IO type. - Default value is None. + :param request_body: Extension resource request body. Is either a ExtensionInstallationRequest + type or a IO type. Default value is None. :type request_body: ~azure.mgmt.agrifood.models.ExtensionInstallationRequest or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. @@ -171,16 +170,14 @@ async def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.Extension] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(request_body, (IO, bytes)): + if isinstance(request_body, (IOBase, bytes)): _content = request_body else: if request_body is not None: @@ -190,7 +187,7 @@ async def create_or_update( request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -204,43 +201,45 @@ async def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code == 200: - deserialized = self._deserialize("Extension", pipeline_response) - - if response.status_code == 201: - deserialized = self._deserialize("Extension", pipeline_response) + deserialized = self._deserialize("Extension", pipeline_response) if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) - return deserialized # type: ignore + return deserialized create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace_async async def get( - self, resource_group_name: str, farm_beats_resource_name: str, extension_id: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + **kwargs: Any ) -> _models.Extension: """Get installed extension details by extension id. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -259,14 +258,12 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.Extension] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -277,8 +274,9 @@ async def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -296,20 +294,25 @@ async def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace_async async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, extension_id: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + **kwargs: Any ) -> None: """Uninstall extension. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -328,14 +331,12 @@ async def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -346,8 +347,9 @@ async def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -361,14 +363,14 @@ async def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace - def list_by_farm_beats( + def list_by_data_manager_for_agriculture( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_ids: Optional[List[str]] = None, extension_categories: Optional[List[str]] = None, max_page_size: int = 50, @@ -380,8 +382,9 @@ def list_by_farm_beats( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_ids: Installed extension ids. Default value is None. :type extension_ids: list[str] :param extension_categories: Installed extension categories. Default value is None. @@ -399,9 +402,7 @@ def list_by_farm_beats( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.ExtensionListResponse] = kwargs.pop("cls", None) error_map = { @@ -415,16 +416,16 @@ def list_by_farm_beats( def prepare_request(next_link=None): if not next_link: - request = build_list_by_farm_beats_request( + request = build_list_by_data_manager_for_agriculture_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, extension_ids=extension_ids, extension_categories=extension_categories, max_page_size=max_page_size, skip_token=skip_token, api_version=api_version, - template_url=self.list_by_farm_beats.metadata["url"], + template_url=self.list_by_data_manager_for_agriculture.metadata["url"], headers=_headers, params=_params, ) @@ -459,8 +460,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -473,6 +475,6 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) - list_by_farm_beats.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions" + list_by_data_manager_for_agriculture.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operation_results_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operation_results_operations.py new file mode 100644 index 0000000000000..974391945b67b --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operation_results_operations.py @@ -0,0 +1,113 @@ +# 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 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.pipeline.transport import AsyncHttpResponse +from azure.core.rest import 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._operation_results_operations import build_get_request + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] + + +class OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.agrifood.aio.AgriFoodMgmtClient`'s + :attr:`operation_results` 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, locations: str, operation_results_id: str, **kwargs: Any) -> _models.ArmAsyncOperation: + """Get operationResults for a Data Manager For Agriculture resource. + + :param locations: Location. Required. + :type locations: str + :param operation_results_id: operationResultsId for a specific location. Required. + :type operation_results_id: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: ArmAsyncOperation or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.ArmAsyncOperation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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.ArmAsyncOperation] = kwargs.pop("cls", None) + + request = build_get_request( + locations=locations, + operation_results_id=operation_results_id, + 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) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("ArmAsyncOperation", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized + + get.metadata = { + "url": "/subscriptions/{subscriptionId}/providers/Microsoft.AgFoodPlatform/locations/{locations}/operationResults/{operationResultsId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operations.py index 0a41fd2387398..6f750c37b806a 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_operations.py @@ -6,7 +6,6 @@ # 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 @@ -30,10 +29,6 @@ from ..._vendor import _convert_request from ...operations._operations import build_list_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -69,9 +64,7 @@ def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) error_map = { @@ -122,8 +115,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_endpoint_connections_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_endpoint_connections_operations.py index 3069aecf3430d..89686f947030d 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_endpoint_connections_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_endpoint_connections_operations.py @@ -6,11 +6,9 @@ # 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, IO, Optional, TypeVar, Union, cast, overload -import urllib.parse +from io import IOBase +from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload -from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, @@ -23,7 +21,6 @@ from azure.core.pipeline.transport import AsyncHttpResponse from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod from azure.core.rest import 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 @@ -38,10 +35,6 @@ build_list_by_resource_request, ) -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -69,9 +62,9 @@ def __init__(self, *args, **kwargs) -> None: async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: _models.PrivateEndpointConnection, + request: _models.PrivateEndpointConnection, *, content_type: str = "application/json", **kwargs: Any @@ -81,12 +74,13 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Required. - :type body: ~azure.mgmt.agrifood.models.PrivateEndpointConnection + :param request: Request object. Required. + :type request: ~azure.mgmt.agrifood.models.PrivateEndpointConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -100,9 +94,9 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: IO, + request: IO, *, content_type: str = "application/json", **kwargs: Any @@ -112,12 +106,13 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Required. - :type body: IO + :param request: Request object. Required. + :type request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -131,9 +126,9 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: Union[_models.PrivateEndpointConnection, IO], + request: Union[_models.PrivateEndpointConnection, IO], **kwargs: Any ) -> _models.PrivateEndpointConnection: """Approves or Rejects a Private endpoint connection request. @@ -141,12 +136,14 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.PrivateEndpointConnection or IO + :param request: Request object. Is either a PrivateEndpointConnection type or a IO type. + Required. + :type request: ~azure.mgmt.agrifood.models.PrivateEndpointConnection or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -160,29 +157,30 @@ async def create_or_update( 404: ResourceNotFoundError, 409: ResourceExistsError, 304: ResourceNotModifiedError, + 400: lambda response: HttpResponseError( + response=response, model=self._deserialize(_models.ErrorResponse, response), error_format=ARMErrorFormat + ), } error_map.update(kwargs.pop("error_map", {}) or {}) _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.PrivateEndpointConnection] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "PrivateEndpointConnection") + _json = self._serialize.body(request, "PrivateEndpointConnection") request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -196,8 +194,9 @@ async def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -215,14 +214,14 @@ async def create_or_update( return deserialized create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } @distributed_trace_async async def get( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> _models.PrivateEndpointConnection: @@ -231,8 +230,9 @@ async def get( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -253,14 +253,12 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -271,8 +269,9 @@ async def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -290,13 +289,13 @@ async def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } async def _delete_initial( # pylint: disable=inconsistent-return-statements self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> None: @@ -311,14 +310,12 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -329,8 +326,9 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -348,14 +346,14 @@ async def _delete_initial( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, response_headers) _delete_initial.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } @distributed_trace_async async def begin_delete( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> AsyncLROPoller[None]: @@ -364,8 +362,9 @@ async def begin_delete( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -383,9 +382,7 @@ async def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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) @@ -393,7 +390,7 @@ async def begin_delete( if cont_token is None: raw_result = await self._delete_initial( # type: ignore resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, api_version=api_version, cls=lambda x, y, z: x, @@ -409,7 +406,8 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- if polling is True: polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) + AsyncPollingMethod, + AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), ) elif polling is False: polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) @@ -425,35 +423,26 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore begin_delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } - @distributed_trace - def list_by_resource( - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: + @distributed_trace_async + async def list_by_resource( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.PrivateEndpointConnectionListResult: """Get list of Private endpoint connections. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.PrivateEndpointConnection] + :return: PrivateEndpointConnectionListResult or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.PrivateEndpointConnectionListResult :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -462,63 +451,43 @@ def list_by_resource( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - request = build_list_by_resource_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.list_by_resource.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - 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 = _convert_request(request) - request.url = self._client.format_url(request.url) - request.method = "GET" - return request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - async def get_next(next_link=None): - request = prepare_request(next_link) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - response = pipeline_response.http_response + request = build_list_by_resource_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.list_by_resource.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) - return pipeline_response + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, 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 AsyncItemPaged(get_next, extract_data) + deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized list_by_resource.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_link_resources_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_link_resources_operations.py index e5b8238344741..e6ba0a15d1d95 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_link_resources_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_private_link_resources_operations.py @@ -6,11 +6,8 @@ # 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 typing import Any, Callable, Dict, Optional, TypeVar -from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, @@ -22,7 +19,6 @@ from azure.core.pipeline import PipelineResponse from azure.core.pipeline.transport import AsyncHttpResponse from azure.core.rest import 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 @@ -31,10 +27,6 @@ from ..._vendor import _convert_request from ...operations._private_link_resources_operations import build_get_request, build_list_by_resource_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -58,31 +50,23 @@ def __init__(self, *args, **kwargs) -> None: 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_resource( - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateLinkResource"]: + @distributed_trace_async + async def list_by_resource( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.PrivateLinkResourceListResult: """Get list of Private link resources. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.PrivateLinkResource] + :return: PrivateLinkResourceListResult or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.PrivateLinkResourceListResult :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) - error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -91,78 +75,63 @@ def list_by_resource( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - request = build_list_by_resource_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.list_by_resource.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - 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 = _convert_request(request) - request.url = self._client.format_url(request.url) - request.method = "GET" - return request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - request = prepare_request(next_link) - - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, 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) + _headers = 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.PrivateLinkResourceListResult] = kwargs.pop("cls", None) + + request = build_list_by_resource_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.list_by_resource.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized list_by_resource.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources" } @distributed_trace_async async def get( - self, resource_group_name: str, farm_beats_resource_name: str, sub_resource_name: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + sub_resource_name: str, + **kwargs: Any ) -> _models.PrivateLinkResource: """Get Private link resource object. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param sub_resource_name: Sub resource name. Required. :type sub_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -183,14 +152,12 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, sub_resource_name=sub_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -201,8 +168,9 @@ async def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -220,5 +188,5 @@ async def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources/{subResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources/{subResourceName}" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_discoverability_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_discoverability_operations.py index 54b8e451b26b5..77d0898979bab 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_discoverability_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_discoverability_operations.py @@ -6,7 +6,6 @@ # 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, List, Optional, TypeVar import urllib.parse @@ -31,10 +30,6 @@ from ..._vendor import _convert_request from ...operations._solutions_discoverability_operations import build_get_request, build_list_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -65,30 +60,30 @@ def list( farm_beats_solution_names: Optional[List[str]] = None, max_page_size: int = 50, **kwargs: Any - ) -> AsyncIterable["_models.FarmBeatsSolution"]: - """Get list of farmBeats solutions. + ) -> AsyncIterable["_models.DataManagerForAgricultureSolution"]: + """Get list of Data Manager For Agriculture solutions. - :param farm_beats_solution_ids: Ids of FarmBeats Solutions which the customer requests to - fetch. Default value is None. + :param farm_beats_solution_ids: Ids of Data Manager For Agriculture Solutions which the + customer requests to fetch. Default value is None. :type farm_beats_solution_ids: list[str] - :param farm_beats_solution_names: Names of FarmBeats Solutions which the customer requests to - fetch. Default value is None. + :param farm_beats_solution_names: Names of Data Manager For Agriculture Solutions which the + customer requests to fetch. Default value is None. :type farm_beats_solution_names: list[str] :param max_page_size: Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. :type max_page_size: int :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either FarmBeatsSolution or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.FarmBeatsSolution] + :return: An iterator like instance of either DataManagerForAgricultureSolution or the result of + cls(response) + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsSolutionListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureSolutionListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -132,7 +127,7 @@ def prepare_request(next_link=None): return request async def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsSolutionListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureSolutionListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -141,8 +136,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -158,14 +154,17 @@ async def get_next(next_link=None): list.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions"} @distributed_trace_async - async def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmBeatsSolution: - """Get farmBeats solution by id. - - :param farm_beats_solution_id: farmBeatsSolutionId to be queried. Required. - :type farm_beats_solution_id: str + async def get( + self, data_manager_for_agriculture_solution_id: str, **kwargs: Any + ) -> _models.DataManagerForAgricultureSolution: + """Get Data Manager For Agriculture solution by id. + + :param data_manager_for_agriculture_solution_id: dataManagerForAgricultureSolutionId to be + queried. Required. + :type data_manager_for_agriculture_solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeatsSolution or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeatsSolution + :return: DataManagerForAgricultureSolution or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -179,13 +178,11 @@ async def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmB _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsSolution] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureSolution] = kwargs.pop("cls", None) request = build_get_request( - farm_beats_solution_id=farm_beats_solution_id, + data_manager_for_agriculture_solution_id=data_manager_for_agriculture_solution_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -194,8 +191,9 @@ async def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmB request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -205,11 +203,13 @@ async def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmB error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeatsSolution", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureSolution", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized - get.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{farmBeatsSolutionId}"} + get.metadata = { + "url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{dataManagerForAgricultureSolutionId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_operations.py index 25c422cac1134..8fb10934a7c43 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/aio/operations/_solutions_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import datetime -import sys +from io import IOBase from typing import Any, AsyncIterable, Callable, Dict, IO, List, Optional, TypeVar, Union, overload import urllib.parse @@ -37,10 +37,6 @@ build_list_request, ) -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] @@ -68,8 +64,9 @@ def __init__(self, *args, **kwargs) -> None: async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[_models.SolutionInstallationRequest] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[_models.Solution] = None, *, content_type: str = "application/json", **kwargs: Any @@ -79,10 +76,13 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Default value is None. - :type body: ~azure.mgmt.agrifood.models.SolutionInstallationRequest + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Default value is None. + :type request_body: ~azure.mgmt.agrifood.models.Solution :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -96,8 +96,9 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[IO] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[IO] = None, *, content_type: str = "application/json", **kwargs: Any @@ -107,10 +108,13 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Default value is None. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Default value is None. + :type request_body: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -124,8 +128,9 @@ async def create_or_update( async def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[Union[_models.SolutionInstallationRequest, IO]] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[Union[_models.Solution, IO]] = None, **kwargs: Any ) -> _models.Solution: """Install Or Update Solution. @@ -133,11 +138,14 @@ async def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Is either a model type or a IO type. Default value - is None. - :type body: ~azure.mgmt.agrifood.models.SolutionInstallationRequest or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Is either a Solution type or a IO type. + Default value is None. + :type request_body: ~azure.mgmt.agrifood.models.Solution or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -157,28 +165,26 @@ async def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.Solution] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request_body, (IOBase, bytes)): + _content = request_body else: - if body is not None: - _json = self._serialize.body(body, "SolutionInstallationRequest") + if request_body is not None: + _json = self._serialize.body(request_body, "Solution") else: _json = None request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, content_type=content_type, json=_json, @@ -190,8 +196,9 @@ async def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -213,18 +220,23 @@ async def create_or_update( return deserialized # type: ignore create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace_async - async def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any) -> _models.Solution: + async def get( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, solution_id: str, **kwargs: Any + ) -> _models.Solution: """Get installed Solution details by Solution id. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: Solution or the result of cls(response) :rtype: ~azure.mgmt.agrifood.models.Solution @@ -241,16 +253,14 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.Solution] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -259,8 +269,9 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -278,20 +289,23 @@ async def get(self, resource_group_name: str, farm_beats_resource_name: str, **k return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace_async async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, solution_id: str, **kwargs: Any ) -> None: """Uninstall Solution. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) :rtype: None @@ -308,16 +322,14 @@ async def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, template_url=self.delete.metadata["url"], headers=_headers, @@ -326,8 +338,9 @@ async def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -341,14 +354,14 @@ async def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace def list( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, solution_ids: Optional[List[str]] = None, ids: Optional[List[str]] = None, names: Optional[List[str]] = None, @@ -367,8 +380,9 @@ def list( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param solution_ids: Installed Solution ids. Default value is None. :type solution_ids: list[str] :param ids: Ids of the resource. Default value is None. @@ -405,9 +419,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.SolutionListResponse] = kwargs.pop("cls", None) error_map = { @@ -423,7 +435,7 @@ def prepare_request(next_link=None): request = build_list_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, solution_ids=solution_ids, ids=ids, @@ -472,8 +484,9 @@ async def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -487,5 +500,5 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) list.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/__init__.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/__init__.py index 2f0e54f90f6c6..d624b09bd32d4 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/__init__.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/__init__.py @@ -6,10 +6,26 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- +from ._models_py3 import ApiKeyAuthCredentials from ._models_py3 import ApiProperties from ._models_py3 import ArmAsyncOperation +from ._models_py3 import ArmAsyncOperationError +from ._models_py3 import AuthCredentials from ._models_py3 import CheckNameAvailabilityRequest from ._models_py3 import CheckNameAvailabilityResponse +from ._models_py3 import DataConnector +from ._models_py3 import DataConnectorListResponse +from ._models_py3 import DataConnectorProperties +from ._models_py3 import DataManagerForAgriculture +from ._models_py3 import DataManagerForAgricultureExtension +from ._models_py3 import DataManagerForAgricultureExtensionListResponse +from ._models_py3 import DataManagerForAgricultureExtensionProperties +from ._models_py3 import DataManagerForAgricultureListResponse +from ._models_py3 import DataManagerForAgricultureSolution +from ._models_py3 import DataManagerForAgricultureSolutionListResponse +from ._models_py3 import DataManagerForAgricultureSolutionProperties +from ._models_py3 import DataManagerForAgricultureUpdateProperties +from ._models_py3 import DataManagerForAgricultureUpdateRequestModel from ._models_py3 import DetailedInformation from ._models_py3 import ErrorAdditionalInfo from ._models_py3 import ErrorDetail @@ -17,20 +33,10 @@ from ._models_py3 import Extension from ._models_py3 import ExtensionInstallationRequest from ._models_py3 import ExtensionListResponse -from ._models_py3 import FarmBeats -from ._models_py3 import FarmBeatsExtension -from ._models_py3 import FarmBeatsExtensionListResponse -from ._models_py3 import FarmBeatsListResponse -from ._models_py3 import FarmBeatsSolution -from ._models_py3 import FarmBeatsSolutionListResponse -from ._models_py3 import FarmBeatsSolutionProperties -from ._models_py3 import FarmBeatsUpdateProperties -from ._models_py3 import FarmBeatsUpdateRequestModel from ._models_py3 import Identity -from ._models_py3 import Insight -from ._models_py3 import InsightAttachment +from ._models_py3 import KeyVaultProperties from ._models_py3 import MarketplaceOfferDetails -from ._models_py3 import Measure +from ._models_py3 import OAuthClientCredentials from ._models_py3 import Operation from ._models_py3 import OperationDisplay from ._models_py3 import OperationListResult @@ -42,11 +48,8 @@ from ._models_py3 import PrivateLinkServiceConnectionState from ._models_py3 import ProxyResource from ._models_py3 import Resource -from ._models_py3 import ResourceParameter from ._models_py3 import SensorIntegration from ._models_py3 import Solution -from ._models_py3 import SolutionEvaluatedOutput -from ._models_py3 import SolutionInstallationRequest from ._models_py3 import SolutionListResponse from ._models_py3 import SolutionProperties from ._models_py3 import SystemData @@ -54,6 +57,7 @@ from ._models_py3 import UnitSystemsInfo from ._agri_food_mgmt_client_enums import ActionType +from ._agri_food_mgmt_client_enums import AuthCredentialsKind from ._agri_food_mgmt_client_enums import CheckNameAvailabilityReason from ._agri_food_mgmt_client_enums import CreatedByType from ._agri_food_mgmt_client_enums import Origin @@ -66,10 +70,26 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ + "ApiKeyAuthCredentials", "ApiProperties", "ArmAsyncOperation", + "ArmAsyncOperationError", + "AuthCredentials", "CheckNameAvailabilityRequest", "CheckNameAvailabilityResponse", + "DataConnector", + "DataConnectorListResponse", + "DataConnectorProperties", + "DataManagerForAgriculture", + "DataManagerForAgricultureExtension", + "DataManagerForAgricultureExtensionListResponse", + "DataManagerForAgricultureExtensionProperties", + "DataManagerForAgricultureListResponse", + "DataManagerForAgricultureSolution", + "DataManagerForAgricultureSolutionListResponse", + "DataManagerForAgricultureSolutionProperties", + "DataManagerForAgricultureUpdateProperties", + "DataManagerForAgricultureUpdateRequestModel", "DetailedInformation", "ErrorAdditionalInfo", "ErrorDetail", @@ -77,20 +97,10 @@ "Extension", "ExtensionInstallationRequest", "ExtensionListResponse", - "FarmBeats", - "FarmBeatsExtension", - "FarmBeatsExtensionListResponse", - "FarmBeatsListResponse", - "FarmBeatsSolution", - "FarmBeatsSolutionListResponse", - "FarmBeatsSolutionProperties", - "FarmBeatsUpdateProperties", - "FarmBeatsUpdateRequestModel", "Identity", - "Insight", - "InsightAttachment", + "KeyVaultProperties", "MarketplaceOfferDetails", - "Measure", + "OAuthClientCredentials", "Operation", "OperationDisplay", "OperationListResult", @@ -102,17 +112,15 @@ "PrivateLinkServiceConnectionState", "ProxyResource", "Resource", - "ResourceParameter", "SensorIntegration", "Solution", - "SolutionEvaluatedOutput", - "SolutionInstallationRequest", "SolutionListResponse", "SolutionProperties", "SystemData", "TrackedResource", "UnitSystemsInfo", "ActionType", + "AuthCredentialsKind", "CheckNameAvailabilityReason", "CreatedByType", "Origin", diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_agri_food_mgmt_client_enums.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_agri_food_mgmt_client_enums.py index 9ddd31d22ea8d..c02f36cedb5a1 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_agri_food_mgmt_client_enums.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_agri_food_mgmt_client_enums.py @@ -16,6 +16,13 @@ class ActionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): INTERNAL = "Internal" +class AuthCredentialsKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Enum for different types of AuthCredentials supported.""" + + O_AUTH_CLIENT_CREDENTIALS = "OAuthClientCredentials" + API_KEY_AUTH_CREDENTIALS = "ApiKeyAuthCredentials" + + class CheckNameAvailabilityReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The reason why the given name is not available.""" @@ -60,17 +67,18 @@ class PrivateEndpointServiceConnectionStatus(str, Enum, metaclass=CaseInsensitiv class ProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Sensor integration instance provisioning state.""" + """Data Manager For Agriculture instance provisioning state.""" CREATING = "Creating" UPDATING = "Updating" DELETING = "Deleting" SUCCEEDED = "Succeeded" FAILED = "Failed" + RUNNING = "Running" class PublicNetworkAccess(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Property to allow or block public traffic for an Azure FarmBeats resource.""" + """Property to allow or block public traffic for an Azure Data Manager For Agriculture resource.""" ENABLED = "Enabled" - HYBRID = "Hybrid" + DISABLED = "Disabled" diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_models_py3.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_models_py3.py index 2ea7c3a8a9aa3..7fa78336617d3 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_models_py3.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/models/_models_py3.py @@ -23,51 +23,154 @@ from .. import models as _models +class AuthCredentials(_serialization.Model): + """AuthCredentials abstract base class for Auth Purpose. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + ApiKeyAuthCredentials, OAuthClientCredentials + + All required parameters must be populated in order to send to Azure. + + :ivar kind: Enum for different types of AuthCredentials supported. Required. Known values are: + "OAuthClientCredentials" and "ApiKeyAuthCredentials". + :vartype kind: str or ~azure.mgmt.agrifood.models.AuthCredentialsKind + """ + + _validation = { + "kind": {"required": True}, + } + + _attribute_map = { + "kind": {"key": "kind", "type": "str"}, + } + + _subtype_map = { + "kind": {"ApiKeyAuthCredentials": "ApiKeyAuthCredentials", "OAuthClientCredentials": "OAuthClientCredentials"} + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.kind: Optional[str] = None + + +class ApiKeyAuthCredentials(AuthCredentials): + """ApiKeyAuthCredentials class for ApiKey based Auth. + + All required parameters must be populated in order to send to Azure. + + :ivar kind: Enum for different types of AuthCredentials supported. Required. Known values are: + "OAuthClientCredentials" and "ApiKeyAuthCredentials". + :vartype kind: str or ~azure.mgmt.agrifood.models.AuthCredentialsKind + :ivar api_key: Properties of the key vault. Required. + :vartype api_key: ~azure.mgmt.agrifood.models.KeyVaultProperties + """ + + _validation = { + "kind": {"required": True}, + "api_key": {"required": True}, + } + + _attribute_map = { + "kind": {"key": "kind", "type": "str"}, + "api_key": {"key": "apiKey", "type": "KeyVaultProperties"}, + } + + def __init__(self, *, api_key: "_models.KeyVaultProperties", **kwargs: Any) -> None: + """ + :keyword api_key: Properties of the key vault. Required. + :paramtype api_key: ~azure.mgmt.agrifood.models.KeyVaultProperties + """ + super().__init__(**kwargs) + self.kind: str = "ApiKeyAuthCredentials" + self.api_key = api_key + + class ApiProperties(_serialization.Model): """Api properties. - :ivar api_freshness_window_in_minutes: Interval in minutes for which the weather data for the - api needs to be refreshed. - :vartype api_freshness_window_in_minutes: int + :ivar api_freshness_time_in_minutes: Interval in minutes for which the weather data for the api + needs to be refreshed. + :vartype api_freshness_time_in_minutes: int """ _validation = { - "api_freshness_window_in_minutes": {"maximum": 10080, "minimum": 0}, + "api_freshness_time_in_minutes": {"maximum": 10080, "minimum": 0}, } _attribute_map = { - "api_freshness_window_in_minutes": {"key": "apiFreshnessWindowInMinutes", "type": "int"}, + "api_freshness_time_in_minutes": {"key": "apiFreshnessTimeInMinutes", "type": "int"}, } - def __init__(self, *, api_freshness_window_in_minutes: Optional[int] = None, **kwargs): + def __init__(self, *, api_freshness_time_in_minutes: Optional[int] = None, **kwargs: Any) -> None: """ - :keyword api_freshness_window_in_minutes: Interval in minutes for which the weather data for - the api needs to be refreshed. - :paramtype api_freshness_window_in_minutes: int + :keyword api_freshness_time_in_minutes: Interval in minutes for which the weather data for the + api needs to be refreshed. + :paramtype api_freshness_time_in_minutes: int """ super().__init__(**kwargs) - self.api_freshness_window_in_minutes = api_freshness_window_in_minutes + self.api_freshness_time_in_minutes = api_freshness_time_in_minutes class ArmAsyncOperation(_serialization.Model): """Arm async operation class. Ref: https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/async-operations. - :ivar status: Status of the async operation. - :vartype status: str + :ivar status: Status of the async operation. + :vartype status: str + :ivar error: Arm async operation error class. + Ref: + https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#azure-asyncoperation-resource-format. + :vartype error: ~azure.mgmt.agrifood.models.ArmAsyncOperationError """ _attribute_map = { "status": {"key": "status", "type": "str"}, + "error": {"key": "error", "type": "ArmAsyncOperationError"}, } - def __init__(self, *, status: Optional[str] = None, **kwargs): + def __init__( + self, *, status: Optional[str] = None, error: Optional["_models.ArmAsyncOperationError"] = None, **kwargs: Any + ) -> None: """ :keyword status: Status of the async operation. :paramtype status: str + :keyword error: Arm async operation error class. + Ref: + https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#azure-asyncoperation-resource-format. + :paramtype error: ~azure.mgmt.agrifood.models.ArmAsyncOperationError """ super().__init__(**kwargs) self.status = status + self.error = error + + +class ArmAsyncOperationError(_serialization.Model): + """Arm async operation error class. + Ref: + https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#azure-asyncoperation-resource-format. + + :ivar code: Status of the async operation. + :vartype code: str + :ivar message: Status of the async operation. + :vartype message: str + """ + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + } + + def __init__(self, *, code: Optional[str] = None, message: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword code: Status of the async operation. + :paramtype code: str + :keyword message: Status of the async operation. + :paramtype message: str + """ + super().__init__(**kwargs) + self.code = code + self.message = message class CheckNameAvailabilityRequest(_serialization.Model): @@ -84,7 +187,7 @@ class CheckNameAvailabilityRequest(_serialization.Model): "type": {"key": "type", "type": "str"}, } - def __init__(self, *, name: Optional[str] = None, type: Optional[str] = None, **kwargs): + def __init__(self, *, name: Optional[str] = None, type: Optional[str] = None, **kwargs: Any) -> None: """ :keyword name: The name of the resource for which availability needs to be checked. :paramtype name: str @@ -120,8 +223,8 @@ def __init__( name_available: Optional[bool] = None, reason: Optional[Union[str, "_models.CheckNameAvailabilityReason"]] = None, message: Optional[str] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ :keyword name_available: Indicates if the resource name is available. :paramtype name_available: bool @@ -137,150 +240,6 @@ def __init__( self.message = message -class DetailedInformation(_serialization.Model): - """Model to capture detailed information for farmBeatsExtensions. - - :ivar api_name: ApiName available for the farmBeatsExtension. - :vartype api_name: str - :ivar custom_parameters: List of customParameters. - :vartype custom_parameters: list[str] - :ivar platform_parameters: List of platformParameters. - :vartype platform_parameters: list[str] - :ivar units_supported: Unit systems info for the data provider. - :vartype units_supported: ~azure.mgmt.agrifood.models.UnitSystemsInfo - :ivar api_input_parameters: List of apiInputParameters. - :vartype api_input_parameters: list[str] - """ - - _attribute_map = { - "api_name": {"key": "apiName", "type": "str"}, - "custom_parameters": {"key": "customParameters", "type": "[str]"}, - "platform_parameters": {"key": "platformParameters", "type": "[str]"}, - "units_supported": {"key": "unitsSupported", "type": "UnitSystemsInfo"}, - "api_input_parameters": {"key": "apiInputParameters", "type": "[str]"}, - } - - def __init__( - self, - *, - api_name: Optional[str] = None, - custom_parameters: Optional[List[str]] = None, - platform_parameters: Optional[List[str]] = None, - units_supported: Optional["_models.UnitSystemsInfo"] = None, - api_input_parameters: Optional[List[str]] = None, - **kwargs - ): - """ - :keyword api_name: ApiName available for the farmBeatsExtension. - :paramtype api_name: str - :keyword custom_parameters: List of customParameters. - :paramtype custom_parameters: list[str] - :keyword platform_parameters: List of platformParameters. - :paramtype platform_parameters: list[str] - :keyword units_supported: Unit systems info for the data provider. - :paramtype units_supported: ~azure.mgmt.agrifood.models.UnitSystemsInfo - :keyword api_input_parameters: List of apiInputParameters. - :paramtype api_input_parameters: list[str] - """ - super().__init__(**kwargs) - self.api_name = api_name - self.custom_parameters = custom_parameters - self.platform_parameters = platform_parameters - self.units_supported = units_supported - self.api_input_parameters = api_input_parameters - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs): - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorDetail(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.agrifood.models.ErrorDetail] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.agrifood.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorDetail]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs): - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class ErrorResponse(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). - - :ivar error: The error object. - :vartype error: ~azure.mgmt.agrifood.models.ErrorDetail - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorDetail"}, - } - - def __init__(self, *, error: Optional["_models.ErrorDetail"] = None, **kwargs): - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.agrifood.models.ErrorDetail - """ - super().__init__(**kwargs) - self.error = error - - class Resource(_serialization.Model): """Common fields that are returned in the response for all Azure Resource Manager resources. @@ -313,7 +272,7 @@ class Resource(_serialization.Model): "system_data": {"key": "systemData", "type": "SystemData"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.id = None @@ -323,7 +282,8 @@ def __init__(self, **kwargs): class ProxyResource(Resource): - """The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location. + """The resource model definition for a Azure Resource Manager proxy resource. It will not have + tags and a location. Variables are only populated by the server, and will be ignored when sending a request. @@ -354,16 +314,18 @@ class ProxyResource(Resource): "system_data": {"key": "systemData", "type": "SystemData"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) -class Extension(ProxyResource): # pylint: disable=too-many-instance-attributes - """Extension resource. +class DataConnector(ProxyResource): + """DataConnector Model. 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. + :ivar id: Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". :vartype id: str @@ -375,20 +337,10 @@ class Extension(ProxyResource): # pylint: disable=too-many-instance-attributes :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy information. :vartype system_data: ~azure.mgmt.agrifood.models.SystemData + :ivar properties: DataConnector Properties. Required. + :vartype properties: ~azure.mgmt.agrifood.models.DataConnectorProperties :ivar e_tag: The ETag value to implement optimistic concurrency. :vartype e_tag: str - :ivar extension_id: Extension Id. - :vartype extension_id: str - :ivar extension_category: Extension category. e.g. weather/sensor/satellite. - :vartype extension_category: str - :ivar installed_extension_version: Installed extension version. - :vartype installed_extension_version: str - :ivar extension_auth_link: Extension auth link. - :vartype extension_auth_link: str - :ivar extension_api_docs_link: Extension api docs link. - :vartype extension_api_docs_link: str - :ivar additional_api_properties: Additional api properties. - :vartype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] """ _validation = { @@ -396,13 +348,8 @@ class Extension(ProxyResource): # pylint: disable=too-many-instance-attributes "name": {"readonly": True}, "type": {"readonly": True}, "system_data": {"readonly": True}, + "properties": {"required": True}, "e_tag": {"readonly": True}, - "extension_id": {"readonly": True, "pattern": r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"}, - "extension_category": {"readonly": True}, - "installed_extension_version": {"readonly": True, "pattern": r"^([1-9]|10).\d$"}, - "extension_auth_link": {"readonly": True}, - "extension_api_docs_link": {"readonly": True}, - "additional_api_properties": {"readonly": True}, } _attribute_map = { @@ -410,95 +357,82 @@ class Extension(ProxyResource): # pylint: disable=too-many-instance-attributes "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "system_data": {"key": "systemData", "type": "SystemData"}, + "properties": {"key": "properties", "type": "DataConnectorProperties"}, "e_tag": {"key": "eTag", "type": "str"}, - "extension_id": {"key": "properties.extensionId", "type": "str"}, - "extension_category": {"key": "properties.extensionCategory", "type": "str"}, - "installed_extension_version": {"key": "properties.installedExtensionVersion", "type": "str"}, - "extension_auth_link": {"key": "properties.extensionAuthLink", "type": "str"}, - "extension_api_docs_link": {"key": "properties.extensionApiDocsLink", "type": "str"}, - "additional_api_properties": {"key": "properties.additionalApiProperties", "type": "{ApiProperties}"}, } - def __init__(self, **kwargs): - """ """ + def __init__(self, *, properties: "_models.DataConnectorProperties", **kwargs: Any) -> None: + """ + :keyword properties: DataConnector Properties. Required. + :paramtype properties: ~azure.mgmt.agrifood.models.DataConnectorProperties + """ super().__init__(**kwargs) + self.properties = properties self.e_tag = None - self.extension_id = None - self.extension_category = None - self.installed_extension_version = None - self.extension_auth_link = None - self.extension_api_docs_link = None - self.additional_api_properties = None -class ExtensionInstallationRequest(_serialization.Model): - """Extension Installation Request Body. +class DataConnectorListResponse(_serialization.Model): + """Paged response contains list of requested objects and a URL link to get the next set of + results. - :ivar extension_version: Extension Version. - :vartype extension_version: str - :ivar additional_api_properties: Additional Api Properties. - :vartype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] + All required parameters must be populated in order to send to Azure. + + :ivar value: List of requested objects. Required. + :vartype value: list[~azure.mgmt.agrifood.models.DataConnector] + :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. + :vartype next_link: str """ _validation = { - "extension_version": {"max_length": 10, "min_length": 3}, + "value": {"required": True}, } _attribute_map = { - "extension_version": {"key": "extensionVersion", "type": "str"}, - "additional_api_properties": {"key": "additionalApiProperties", "type": "{ApiProperties}"}, + "value": {"key": "value", "type": "[DataConnector]"}, + "next_link": {"key": "nextLink", "type": "str"}, } - def __init__( - self, - *, - extension_version: Optional[str] = None, - additional_api_properties: Optional[Dict[str, "_models.ApiProperties"]] = None, - **kwargs - ): + def __init__(self, *, value: List["_models.DataConnector"], next_link: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword extension_version: Extension Version. - :paramtype extension_version: str - :keyword additional_api_properties: Additional Api Properties. - :paramtype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] + :keyword value: List of requested objects. Required. + :paramtype value: list[~azure.mgmt.agrifood.models.DataConnector] + :keyword next_link: Continuation link (absolute URI) to the next page of results in the list. + :paramtype next_link: str """ super().__init__(**kwargs) - self.extension_version = extension_version - self.additional_api_properties = additional_api_properties + self.value = value + self.next_link = next_link -class ExtensionListResponse(_serialization.Model): - """Paged response contains list of requested objects and a URL link to get the next set of results. +class DataConnectorProperties(_serialization.Model): + """DataConnector Properties. - 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. - :ivar value: List of requested objects. - :vartype value: list[~azure.mgmt.agrifood.models.Extension] - :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. - :vartype next_link: str + :ivar credentials: AuthCredentials abstract base class for Auth Purpose. Required. + :vartype credentials: ~azure.mgmt.agrifood.models.AuthCredentials """ _validation = { - "next_link": {"readonly": True}, + "credentials": {"required": True}, } _attribute_map = { - "value": {"key": "value", "type": "[Extension]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "credentials": {"key": "credentials", "type": "AuthCredentials"}, } - def __init__(self, *, value: Optional[List["_models.Extension"]] = None, **kwargs): + def __init__(self, *, credentials: "_models.AuthCredentials", **kwargs: Any) -> None: """ - :keyword value: List of requested objects. - :paramtype value: list[~azure.mgmt.agrifood.models.Extension] + :keyword credentials: AuthCredentials abstract base class for Auth Purpose. Required. + :paramtype credentials: ~azure.mgmt.agrifood.models.AuthCredentials """ super().__init__(**kwargs) - self.value = value - self.next_link = None + self.credentials = credentials class TrackedResource(Resource): - """The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location'. + """The resource model definition for an Azure Resource Manager tracked top level resource which + has 'tags' and a 'location'. Variables are only populated by the server, and will be ignored when sending a request. @@ -538,7 +472,7 @@ class TrackedResource(Resource): "location": {"key": "location", "type": "str"}, } - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs): + def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -550,8 +484,8 @@ def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kw self.location = location -class FarmBeats(TrackedResource): # pylint: disable=too-many-instance-attributes - """FarmBeats ARM Resource. +class DataManagerForAgriculture(TrackedResource): # pylint: disable=too-many-instance-attributes + """Data Manager For Agriculture ARM Resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -574,18 +508,19 @@ class FarmBeats(TrackedResource): # pylint: disable=too-many-instance-attribute :vartype location: str :ivar identity: Identity for the resource. :vartype identity: ~azure.mgmt.agrifood.models.Identity - :ivar instance_uri: Uri of the FarmBeats instance. + :ivar instance_uri: Uri of the Data Manager For Agriculture instance. :vartype instance_uri: str - :ivar provisioning_state: FarmBeats instance provisioning state. Known values are: "Creating", - "Updating", "Deleting", "Succeeded", and "Failed". + :ivar provisioning_state: Data Manager For Agriculture instance provisioning state. Known + values are: "Creating", "Updating", "Deleting", "Succeeded", "Failed", and "Running". :vartype provisioning_state: str or ~azure.mgmt.agrifood.models.ProvisioningState :ivar sensor_integration: Sensor integration request model. :vartype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration - :ivar public_network_access: Property to allow or block public traffic for an Azure FarmBeats - resource. Known values are: "Enabled" and "Hybrid". + :ivar public_network_access: Property to allow or block public traffic for an Azure Data + Manager For Agriculture resource. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess - :ivar private_endpoint_connections: The private endpoint connection resource. - :vartype private_endpoint_connections: ~azure.mgmt.agrifood.models.PrivateEndpointConnection + :ivar private_endpoint_connections: Private endpoints. + :vartype private_endpoint_connections: + list[~azure.mgmt.agrifood.models.PrivateEndpointConnection] """ _validation = { @@ -613,7 +548,7 @@ class FarmBeats(TrackedResource): # pylint: disable=too-many-instance-attribute "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, "private_endpoint_connections": { "key": "properties.privateEndpointConnections", - "type": "PrivateEndpointConnection", + "type": "[PrivateEndpointConnection]", }, } @@ -625,8 +560,8 @@ def __init__( identity: Optional["_models.Identity"] = None, sensor_integration: Optional["_models.SensorIntegration"] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -636,8 +571,8 @@ def __init__( :paramtype identity: ~azure.mgmt.agrifood.models.Identity :keyword sensor_integration: Sensor integration request model. :paramtype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration - :keyword public_network_access: Property to allow or block public traffic for an Azure - FarmBeats resource. Known values are: "Enabled" and "Hybrid". + :keyword public_network_access: Property to allow or block public traffic for an Azure Data + Manager For Agriculture resource. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess """ super().__init__(tags=tags, location=location, **kwargs) @@ -649,8 +584,8 @@ def __init__( self.private_endpoint_connections = None -class FarmBeatsExtension(ProxyResource): # pylint: disable=too-many-instance-attributes - """FarmBeats extension resource. +class DataManagerForAgricultureExtension(ProxyResource): + """DataManagerForAgriculture extension resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -665,13 +600,96 @@ class FarmBeatsExtension(ProxyResource): # pylint: disable=too-many-instance-at :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy information. :vartype system_data: ~azure.mgmt.agrifood.models.SystemData - :ivar target_resource_type: Target ResourceType of the farmBeatsExtension. + :ivar properties: DataManagerForAgricultureExtension properties. + :vartype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureExtensionProperties + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + "system_data": {"readonly": True}, + } + + _attribute_map = { + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "properties": {"key": "properties", "type": "DataManagerForAgricultureExtensionProperties"}, + } + + def __init__( + self, *, properties: Optional["_models.DataManagerForAgricultureExtensionProperties"] = None, **kwargs: Any + ) -> None: + """ + :keyword properties: DataManagerForAgricultureExtension properties. + :paramtype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureExtensionProperties + """ + super().__init__(**kwargs) + self.properties = properties + + +class DataManagerForAgricultureExtensionListResponse(_serialization.Model): + """Paged response contains list of requested objects and a URL link to get the next set of + results. + + All required parameters must be populated in order to send to Azure. + + :ivar value: List of requested objects. Required. + :vartype value: list[~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension] + :ivar skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :vartype skip_token: str + :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. + :vartype next_link: str + """ + + _validation = { + "value": {"required": True}, + } + + _attribute_map = { + "value": {"key": "value", "type": "[DataManagerForAgricultureExtension]"}, + "skip_token": {"key": "$skipToken", "type": "str"}, + "next_link": {"key": "nextLink", "type": "str"}, + } + + def __init__( + self, + *, + value: List["_models.DataManagerForAgricultureExtension"], + skip_token: Optional[str] = None, + next_link: Optional[str] = None, + **kwargs: Any + ) -> None: + """ + :keyword value: List of requested objects. Required. + :paramtype value: list[~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension] + :keyword skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :paramtype skip_token: str + :keyword next_link: Continuation link (absolute URI) to the next page of results in the list. + :paramtype next_link: str + """ + super().__init__(**kwargs) + self.value = value + self.skip_token = skip_token + self.next_link = next_link + + +class DataManagerForAgricultureExtensionProperties(_serialization.Model): + """DataManagerForAgricultureExtension properties. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar target_resource_type: Target ResourceType of the Data Manager For Agriculture Extension. :vartype target_resource_type: str - :ivar farm_beats_extension_id: FarmBeatsExtension ID. + :ivar farm_beats_extension_id: Data Manager For Agriculture Extension ID. :vartype farm_beats_extension_id: str - :ivar farm_beats_extension_name: FarmBeatsExtension name. + :ivar farm_beats_extension_name: Data Manager For Agriculture Extension name. :vartype farm_beats_extension_name: str - :ivar farm_beats_extension_version: FarmBeatsExtension version. + :ivar farm_beats_extension_version: Data Manager For Agriculture Extension version. :vartype farm_beats_extension_version: str :ivar publisher_id: Publisher ID. :vartype publisher_id: str @@ -679,9 +697,9 @@ class FarmBeatsExtension(ProxyResource): # pylint: disable=too-many-instance-at :vartype description: str :ivar extension_category: Category of the extension. e.g. weather/sensor/satellite. :vartype extension_category: str - :ivar extension_auth_link: FarmBeatsExtension auth link. + :ivar extension_auth_link: Data Manager For Agriculture Extension auth link. :vartype extension_auth_link: str - :ivar extension_api_docs_link: FarmBeatsExtension api docs link. + :ivar extension_api_docs_link: Data Manager For Agriculture Extension api docs link. :vartype extension_api_docs_link: str :ivar detailed_information: Detailed information which shows summary of requested data. Used in descriptive get extension metadata call. @@ -691,10 +709,6 @@ class FarmBeatsExtension(ProxyResource): # pylint: disable=too-many-instance-at """ _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, "target_resource_type": {"readonly": True}, "farm_beats_extension_id": { "readonly": True, @@ -718,23 +732,19 @@ class FarmBeatsExtension(ProxyResource): # pylint: disable=too-many-instance-at } _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "target_resource_type": {"key": "properties.targetResourceType", "type": "str"}, - "farm_beats_extension_id": {"key": "properties.farmBeatsExtensionId", "type": "str"}, - "farm_beats_extension_name": {"key": "properties.farmBeatsExtensionName", "type": "str"}, - "farm_beats_extension_version": {"key": "properties.farmBeatsExtensionVersion", "type": "str"}, - "publisher_id": {"key": "properties.publisherId", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "extension_category": {"key": "properties.extensionCategory", "type": "str"}, - "extension_auth_link": {"key": "properties.extensionAuthLink", "type": "str"}, - "extension_api_docs_link": {"key": "properties.extensionApiDocsLink", "type": "str"}, - "detailed_information": {"key": "properties.detailedInformation", "type": "[DetailedInformation]"}, + "target_resource_type": {"key": "targetResourceType", "type": "str"}, + "farm_beats_extension_id": {"key": "farmBeatsExtensionId", "type": "str"}, + "farm_beats_extension_name": {"key": "farmBeatsExtensionName", "type": "str"}, + "farm_beats_extension_version": {"key": "farmBeatsExtensionVersion", "type": "str"}, + "publisher_id": {"key": "publisherId", "type": "str"}, + "description": {"key": "description", "type": "str"}, + "extension_category": {"key": "extensionCategory", "type": "str"}, + "extension_auth_link": {"key": "extensionAuthLink", "type": "str"}, + "extension_api_docs_link": {"key": "extensionApiDocsLink", "type": "str"}, + "detailed_information": {"key": "detailedInformation", "type": "[DetailedInformation]"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.target_resource_type = None @@ -749,68 +759,56 @@ def __init__(self, **kwargs): self.detailed_information = None -class FarmBeatsExtensionListResponse(_serialization.Model): - """Paged response contains list of requested objects and a URL link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of requested objects. - :vartype value: list[~azure.mgmt.agrifood.models.FarmBeatsExtension] - :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[FarmBeatsExtension]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } +class DataManagerForAgricultureListResponse(_serialization.Model): + """Paged response contains list of requested objects and a URL link to get the next set of + results. - def __init__(self, *, value: Optional[List["_models.FarmBeatsExtension"]] = None, **kwargs): - """ - :keyword value: List of requested objects. - :paramtype value: list[~azure.mgmt.agrifood.models.FarmBeatsExtension] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class FarmBeatsListResponse(_serialization.Model): - """Paged response contains list of requested objects and a URL link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. - :ivar value: List of requested objects. - :vartype value: list[~azure.mgmt.agrifood.models.FarmBeats] + :ivar value: List of requested objects. Required. + :vartype value: list[~azure.mgmt.agrifood.models.DataManagerForAgriculture] + :ivar skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :vartype skip_token: str :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. :vartype next_link: str """ _validation = { - "next_link": {"readonly": True}, + "value": {"required": True}, } _attribute_map = { - "value": {"key": "value", "type": "[FarmBeats]"}, + "value": {"key": "value", "type": "[DataManagerForAgriculture]"}, + "skip_token": {"key": "$skipToken", "type": "str"}, "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.FarmBeats"]] = None, **kwargs): + def __init__( + self, + *, + value: List["_models.DataManagerForAgriculture"], + skip_token: Optional[str] = None, + next_link: Optional[str] = None, + **kwargs: Any + ) -> None: """ - :keyword value: List of requested objects. - :paramtype value: list[~azure.mgmt.agrifood.models.FarmBeats] + :keyword value: List of requested objects. Required. + :paramtype value: list[~azure.mgmt.agrifood.models.DataManagerForAgriculture] + :keyword skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :paramtype skip_token: str + :keyword next_link: Continuation link (absolute URI) to the next page of results in the list. + :paramtype next_link: str """ super().__init__(**kwargs) self.value = value - self.next_link = None + self.skip_token = skip_token + self.next_link = next_link -class FarmBeatsSolution(ProxyResource): - """FarmBeats solution resource. +class DataManagerForAgricultureSolution(ProxyResource): + """DataManagerForAgriculture solution resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -825,8 +823,8 @@ class FarmBeatsSolution(ProxyResource): :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy information. :vartype system_data: ~azure.mgmt.agrifood.models.SystemData - :ivar properties: FarmBeatsSolution properties. - :vartype properties: ~azure.mgmt.agrifood.models.FarmBeatsSolutionProperties + :ivar properties: DataManagerForAgricultureSolution properties. + :vartype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureSolutionProperties """ _validation = { @@ -841,23 +839,28 @@ class FarmBeatsSolution(ProxyResource): "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "FarmBeatsSolutionProperties"}, + "properties": {"key": "properties", "type": "DataManagerForAgricultureSolutionProperties"}, } - def __init__(self, *, properties: Optional["_models.FarmBeatsSolutionProperties"] = None, **kwargs): + def __init__( + self, *, properties: Optional["_models.DataManagerForAgricultureSolutionProperties"] = None, **kwargs: Any + ) -> None: """ - :keyword properties: FarmBeatsSolution properties. - :paramtype properties: ~azure.mgmt.agrifood.models.FarmBeatsSolutionProperties + :keyword properties: DataManagerForAgricultureSolution properties. + :paramtype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureSolutionProperties """ super().__init__(**kwargs) self.properties = properties -class FarmBeatsSolutionListResponse(_serialization.Model): - """Paged response contains list of requested objects and a URL link to get the next set of results. +class DataManagerForAgricultureSolutionListResponse(_serialization.Model): + """Paged response contains list of requested objects and a URL link to get the next set of + results. - :ivar value: List of requested objects. - :vartype value: list[~azure.mgmt.agrifood.models.FarmBeatsSolution] + All required parameters must be populated in order to send to Azure. + + :ivar value: List of requested objects. Required. + :vartype value: list[~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution] :ivar skip_token: Token used in retrieving the next page. If null, there are no additional pages. :vartype skip_token: str @@ -865,8 +868,12 @@ class FarmBeatsSolutionListResponse(_serialization.Model): :vartype next_link: str """ + _validation = { + "value": {"required": True}, + } + _attribute_map = { - "value": {"key": "value", "type": "[FarmBeatsSolution]"}, + "value": {"key": "value", "type": "[DataManagerForAgricultureSolution]"}, "skip_token": {"key": "$skipToken", "type": "str"}, "next_link": {"key": "nextLink", "type": "str"}, } @@ -874,14 +881,14 @@ class FarmBeatsSolutionListResponse(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.FarmBeatsSolution"]] = None, + value: List["_models.DataManagerForAgricultureSolution"], skip_token: Optional[str] = None, next_link: Optional[str] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ - :keyword value: List of requested objects. - :paramtype value: list[~azure.mgmt.agrifood.models.FarmBeatsSolution] + :keyword value: List of requested objects. Required. + :paramtype value: list[~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution] :keyword skip_token: Token used in retrieving the next page. If null, there are no additional pages. :paramtype skip_token: str @@ -894,8 +901,8 @@ def __init__( self.next_link = next_link -class FarmBeatsSolutionProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes - """FarmBeatsSolution properties. +class DataManagerForAgricultureSolutionProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes + """DataManagerForAgricultureSolution properties. Variables are only populated by the server, and will be ignored when sending a request. @@ -903,162 +910,474 @@ class FarmBeatsSolutionProperties(_serialization.Model): # pylint: disable=too- :vartype partner_id: str :ivar partner_tenant_id: Solution Partner Tenant Id. :vartype partner_tenant_id: str - :ivar data_access_scopes: Gets scope of the FarmBeats data access that's required for - processing solution request to partner. + :ivar data_access_scopes: Gets scope of the Data manager For Agriculture data access that's + required for processing solution request to partner. Example: For gdd they might need weatherScope and satelliteScope. :vartype data_access_scopes: list[str] :ivar marketplace_offer_details: :vartype marketplace_offer_details: ~azure.mgmt.agrifood.models.MarketplaceOfferDetails - :ivar input_parameters_validation_scopes: Gets scope of the FarmBeats related parameters that - need to be validated in apiInputParameters. - Example: For if 'FarmHierarchy' is the input scope for 'WeatherScope' data access - For working with WeatherScope we need FarmHierarchy info implies 'farmerId', 'resourceId', - 'resourceType' in request body. - :vartype input_parameters_validation_scopes: - list[~azure.mgmt.agrifood.models.ResourceParameter] - :ivar open_api_specs_dictionary: Gets apiVersion: Swagger Document Dictionary to capture all - api versions of swagger exposed by partner to farmbeats. - :vartype open_api_specs_dictionary: dict[str, JSON] - :ivar evaluated_outputs_dictionary: Gets example name: insight sample response Dictionary to - capture all variations of computed results ingested by partner. - :vartype evaluated_outputs_dictionary: dict[str, - ~azure.mgmt.agrifood.models.SolutionEvaluatedOutput] + :ivar open_api_specs_dictionary: Gets api-version Swagger Document Dictionary to capture all + api-versions of swagger exposed by partner to Data Manager For Agriculture. + :vartype open_api_specs_dictionary: dict[str, any] :ivar access_fb_application_id: Application id of the multi tenant application to be used by - partner to access FarmBeats data. + partner to access Data Manager For Agriculture data. :vartype access_fb_application_id: str + :ivar saa_s_application_id: Application id of the SaaS multi tenant application. + :vartype saa_s_application_id: str + :ivar action_ids: List of ActionIds needed to make the SaaS multi tenant application access + relevant fb data. + :vartype action_ids: list[str] :ivar role_id: Role Id of the SaaS multi tenant application to access relevant fb data. :vartype role_id: str :ivar role_name: Role Name of the SaaS multi tenant application to access relevant fb data. :vartype role_name: str :ivar access_fb_application_name: Application name of the multi tenant application to be used - by partner to access FarmBeatsData. + by partner to access Data Manager For Agriculture Data. :vartype access_fb_application_name: str """ _validation = { - "partner_id": {"readonly": True}, - "partner_tenant_id": {"readonly": True}, - "data_access_scopes": {"readonly": True}, - "input_parameters_validation_scopes": {"readonly": True}, - "open_api_specs_dictionary": {"readonly": True}, - "evaluated_outputs_dictionary": {"readonly": True}, - "access_fb_application_id": {"readonly": True}, - "role_id": {"readonly": True}, - "role_name": {"readonly": True}, - "access_fb_application_name": {"readonly": True}, + "partner_id": {"readonly": True}, + "partner_tenant_id": {"readonly": True}, + "data_access_scopes": {"readonly": True}, + "open_api_specs_dictionary": {"readonly": True}, + "access_fb_application_id": {"readonly": True}, + "saa_s_application_id": {"readonly": True}, + "action_ids": {"readonly": True}, + "role_id": {"readonly": True}, + "role_name": {"readonly": True}, + "access_fb_application_name": {"readonly": True}, + } + + _attribute_map = { + "partner_id": {"key": "partnerId", "type": "str"}, + "partner_tenant_id": {"key": "partnerTenantId", "type": "str"}, + "data_access_scopes": {"key": "dataAccessScopes", "type": "[str]"}, + "marketplace_offer_details": {"key": "marketplaceOfferDetails", "type": "MarketplaceOfferDetails"}, + "open_api_specs_dictionary": {"key": "openApiSpecsDictionary", "type": "{object}"}, + "access_fb_application_id": {"key": "accessFBApplicationId", "type": "str"}, + "saa_s_application_id": {"key": "saaSApplicationId", "type": "str"}, + "action_ids": {"key": "actionIds", "type": "[str]"}, + "role_id": {"key": "roleId", "type": "str"}, + "role_name": {"key": "roleName", "type": "str"}, + "access_fb_application_name": {"key": "accessFBApplicationName", "type": "str"}, + } + + def __init__( + self, *, marketplace_offer_details: Optional["_models.MarketplaceOfferDetails"] = None, **kwargs: Any + ) -> None: + """ + :keyword marketplace_offer_details: + :paramtype marketplace_offer_details: ~azure.mgmt.agrifood.models.MarketplaceOfferDetails + """ + super().__init__(**kwargs) + self.partner_id = None + self.partner_tenant_id = None + self.data_access_scopes = None + self.marketplace_offer_details = marketplace_offer_details + self.open_api_specs_dictionary = None + self.access_fb_application_id = None + self.saa_s_application_id = None + self.action_ids = None + self.role_id = None + self.role_name = None + self.access_fb_application_name = None + + +class DataManagerForAgricultureUpdateProperties(_serialization.Model): + """Data Manager For Agriculture ARM Resource properties. + + :ivar sensor_integration: Sensor integration request model. + :vartype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration + :ivar public_network_access: Property to allow or block public traffic for an Azure Data + Manager For Agriculture resource. Known values are: "Enabled" and "Disabled". + :vartype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess + """ + + _attribute_map = { + "sensor_integration": {"key": "sensorIntegration", "type": "SensorIntegration"}, + "public_network_access": {"key": "publicNetworkAccess", "type": "str"}, + } + + def __init__( + self, + *, + sensor_integration: Optional["_models.SensorIntegration"] = None, + public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, + **kwargs: Any + ) -> None: + """ + :keyword sensor_integration: Sensor integration request model. + :paramtype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration + :keyword public_network_access: Property to allow or block public traffic for an Azure Data + Manager For Agriculture resource. Known values are: "Enabled" and "Disabled". + :paramtype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess + """ + super().__init__(**kwargs) + self.sensor_integration = sensor_integration + self.public_network_access = public_network_access + + +class DataManagerForAgricultureUpdateRequestModel(_serialization.Model): + """DataManagerForAgriculture update request. + + :ivar location: Geo-location where the resource lives. + :vartype location: str + :ivar identity: Identity for the resource. + :vartype identity: ~azure.mgmt.agrifood.models.Identity + :ivar properties: Data Manager For Agriculture ARM Resource properties. + :vartype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + _attribute_map = { + "location": {"key": "location", "type": "str"}, + "identity": {"key": "identity", "type": "Identity"}, + "properties": {"key": "properties", "type": "DataManagerForAgricultureUpdateProperties"}, + "tags": {"key": "tags", "type": "{str}"}, + } + + def __init__( + self, + *, + location: Optional[str] = None, + identity: Optional["_models.Identity"] = None, + properties: Optional["_models.DataManagerForAgricultureUpdateProperties"] = None, + tags: Optional[Dict[str, str]] = None, + **kwargs: Any + ) -> None: + """ + :keyword location: Geo-location where the resource lives. + :paramtype location: str + :keyword identity: Identity for the resource. + :paramtype identity: ~azure.mgmt.agrifood.models.Identity + :keyword properties: Data Manager For Agriculture ARM Resource properties. + :paramtype properties: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateProperties + :keyword tags: Resource tags. + :paramtype tags: dict[str, str] + """ + super().__init__(**kwargs) + self.location = location + self.identity = identity + self.properties = properties + self.tags = tags + + +class DetailedInformation(_serialization.Model): + """Model to capture detailed information for Data Manager For AgricultureExtensions. + + :ivar api_name: ApiName available for the Data Manager For Agriculture Extension. + :vartype api_name: str + :ivar api_docs_link: Extension provider's API documentation link. + :vartype api_docs_link: str + :ivar api_type: Type of Api in Extension. + :vartype api_type: str + :ivar custom_parameters: List of customParameters. + :vartype custom_parameters: list[str] + :ivar platform_parameters: List of platformParameters. + :vartype platform_parameters: list[str] + :ivar api_default_input_parameters: List of defaultParameters. + :vartype api_default_input_parameters: list[str] + :ivar units_supported: Unit systems info for the data provider. + :vartype units_supported: ~azure.mgmt.agrifood.models.UnitSystemsInfo + :ivar api_input_parameters: List of apiInputParameters. + :vartype api_input_parameters: list[str] + """ + + _attribute_map = { + "api_name": {"key": "apiName", "type": "str"}, + "api_docs_link": {"key": "apiDocsLink", "type": "str"}, + "api_type": {"key": "apiType", "type": "str"}, + "custom_parameters": {"key": "customParameters", "type": "[str]"}, + "platform_parameters": {"key": "platformParameters", "type": "[str]"}, + "api_default_input_parameters": {"key": "apiDefaultInputParameters", "type": "[str]"}, + "units_supported": {"key": "unitsSupported", "type": "UnitSystemsInfo"}, + "api_input_parameters": {"key": "apiInputParameters", "type": "[str]"}, + } + + def __init__( + self, + *, + api_name: Optional[str] = None, + api_docs_link: Optional[str] = None, + api_type: Optional[str] = None, + custom_parameters: Optional[List[str]] = None, + platform_parameters: Optional[List[str]] = None, + api_default_input_parameters: Optional[List[str]] = None, + units_supported: Optional["_models.UnitSystemsInfo"] = None, + api_input_parameters: Optional[List[str]] = None, + **kwargs: Any + ) -> None: + """ + :keyword api_name: ApiName available for the Data Manager For Agriculture Extension. + :paramtype api_name: str + :keyword api_docs_link: Extension provider's API documentation link. + :paramtype api_docs_link: str + :keyword api_type: Type of Api in Extension. + :paramtype api_type: str + :keyword custom_parameters: List of customParameters. + :paramtype custom_parameters: list[str] + :keyword platform_parameters: List of platformParameters. + :paramtype platform_parameters: list[str] + :keyword api_default_input_parameters: List of defaultParameters. + :paramtype api_default_input_parameters: list[str] + :keyword units_supported: Unit systems info for the data provider. + :paramtype units_supported: ~azure.mgmt.agrifood.models.UnitSystemsInfo + :keyword api_input_parameters: List of apiInputParameters. + :paramtype api_input_parameters: list[str] + """ + super().__init__(**kwargs) + self.api_name = api_name + self.api_docs_link = api_docs_link + self.api_type = api_type + self.custom_parameters = custom_parameters + self.platform_parameters = platform_parameters + self.api_default_input_parameters = api_default_input_parameters + self.units_supported = units_supported + self.api_input_parameters = api_input_parameters + + +class ErrorAdditionalInfo(_serialization.Model): + """The resource management error additional info. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar type: The additional info type. + :vartype type: str + :ivar info: The additional info. + :vartype info: JSON + """ + + _validation = { + "type": {"readonly": True}, + "info": {"readonly": True}, + } + + _attribute_map = { + "type": {"key": "type", "type": "str"}, + "info": {"key": "info", "type": "object"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.type = None + self.info = None + + +class ErrorDetail(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.agrifood.models.ErrorDetail] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.agrifood.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[ErrorDetail]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code = None + self.message = None + self.target = None + self.details = None + self.additional_info = None + + +class ErrorResponse(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + :ivar error: The error object. + :vartype error: ~azure.mgmt.agrifood.models.ErrorDetail + """ + + _attribute_map = { + "error": {"key": "error", "type": "ErrorDetail"}, + } + + def __init__(self, *, error: Optional["_models.ErrorDetail"] = None, **kwargs: Any) -> None: + """ + :keyword error: The error object. + :paramtype error: ~azure.mgmt.agrifood.models.ErrorDetail + """ + super().__init__(**kwargs) + self.error = error + + +class Extension(ProxyResource): # pylint: disable=too-many-instance-attributes + """Extension resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Fully qualified resource ID for the resource. E.g. + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.agrifood.models.SystemData + :ivar e_tag: The ETag value to implement optimistic concurrency. + :vartype e_tag: str + :ivar extension_id: Extension Id. + :vartype extension_id: str + :ivar extension_category: Extension category. e.g. weather/sensor/satellite. + :vartype extension_category: str + :ivar installed_extension_version: Installed extension version. + :vartype installed_extension_version: str + :ivar extension_auth_link: Extension auth link. + :vartype extension_auth_link: str + :ivar extension_api_docs_link: Extension api docs link. + :vartype extension_api_docs_link: str + :ivar additional_api_properties: Additional Api Properties. + :vartype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + "system_data": {"readonly": True}, + "e_tag": {"readonly": True}, + "extension_id": {"readonly": True, "pattern": r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"}, + "extension_category": {"readonly": True}, + "installed_extension_version": {"readonly": True, "pattern": r"^([1-9]|10).\d$"}, + "extension_auth_link": {"readonly": True}, + "extension_api_docs_link": {"readonly": True}, + "additional_api_properties": {"readonly": True}, } _attribute_map = { - "partner_id": {"key": "partnerId", "type": "str"}, - "partner_tenant_id": {"key": "partnerTenantId", "type": "str"}, - "data_access_scopes": {"key": "dataAccessScopes", "type": "[str]"}, - "marketplace_offer_details": {"key": "marketplaceOfferDetails", "type": "MarketplaceOfferDetails"}, - "input_parameters_validation_scopes": {"key": "inputParametersValidationScopes", "type": "[ResourceParameter]"}, - "open_api_specs_dictionary": {"key": "openApiSpecsDictionary", "type": "{object}"}, - "evaluated_outputs_dictionary": {"key": "evaluatedOutputsDictionary", "type": "{SolutionEvaluatedOutput}"}, - "access_fb_application_id": {"key": "accessFBApplicationId", "type": "str"}, - "role_id": {"key": "roleId", "type": "str"}, - "role_name": {"key": "roleName", "type": "str"}, - "access_fb_application_name": {"key": "accessFBApplicationName", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "e_tag": {"key": "eTag", "type": "str"}, + "extension_id": {"key": "properties.extensionId", "type": "str"}, + "extension_category": {"key": "properties.extensionCategory", "type": "str"}, + "installed_extension_version": {"key": "properties.installedExtensionVersion", "type": "str"}, + "extension_auth_link": {"key": "properties.extensionAuthLink", "type": "str"}, + "extension_api_docs_link": {"key": "properties.extensionApiDocsLink", "type": "str"}, + "additional_api_properties": {"key": "properties.additionalApiProperties", "type": "{ApiProperties}"}, } - def __init__(self, *, marketplace_offer_details: Optional["_models.MarketplaceOfferDetails"] = None, **kwargs): - """ - :keyword marketplace_offer_details: - :paramtype marketplace_offer_details: ~azure.mgmt.agrifood.models.MarketplaceOfferDetails - """ + def __init__(self, **kwargs: Any) -> None: + """ """ super().__init__(**kwargs) - self.partner_id = None - self.partner_tenant_id = None - self.data_access_scopes = None - self.marketplace_offer_details = marketplace_offer_details - self.input_parameters_validation_scopes = None - self.open_api_specs_dictionary = None - self.evaluated_outputs_dictionary = None - self.access_fb_application_id = None - self.role_id = None - self.role_name = None - self.access_fb_application_name = None + self.e_tag = None + self.extension_id = None + self.extension_category = None + self.installed_extension_version = None + self.extension_auth_link = None + self.extension_api_docs_link = None + self.additional_api_properties = None -class FarmBeatsUpdateProperties(_serialization.Model): - """FarmBeats ARM Resource properties. +class ExtensionInstallationRequest(_serialization.Model): + """Extension Installation Request Body. - :ivar sensor_integration: Sensor integration request model. - :vartype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration - :ivar public_network_access: Property to allow or block public traffic for an Azure FarmBeats - resource. Known values are: "Enabled" and "Hybrid". - :vartype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess + :ivar extension_version: Extension Version. + :vartype extension_version: str + :ivar additional_api_properties: Additional Api Properties. + :vartype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] """ + _validation = { + "extension_version": {"max_length": 10, "min_length": 3}, + } + _attribute_map = { - "sensor_integration": {"key": "sensorIntegration", "type": "SensorIntegration"}, - "public_network_access": {"key": "publicNetworkAccess", "type": "str"}, + "extension_version": {"key": "extensionVersion", "type": "str"}, + "additional_api_properties": {"key": "additionalApiProperties", "type": "{ApiProperties}"}, } def __init__( self, *, - sensor_integration: Optional["_models.SensorIntegration"] = None, - public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, - **kwargs - ): + extension_version: Optional[str] = None, + additional_api_properties: Optional[Dict[str, "_models.ApiProperties"]] = None, + **kwargs: Any + ) -> None: """ - :keyword sensor_integration: Sensor integration request model. - :paramtype sensor_integration: ~azure.mgmt.agrifood.models.SensorIntegration - :keyword public_network_access: Property to allow or block public traffic for an Azure - FarmBeats resource. Known values are: "Enabled" and "Hybrid". - :paramtype public_network_access: str or ~azure.mgmt.agrifood.models.PublicNetworkAccess + :keyword extension_version: Extension Version. + :paramtype extension_version: str + :keyword additional_api_properties: Additional Api Properties. + :paramtype additional_api_properties: dict[str, ~azure.mgmt.agrifood.models.ApiProperties] """ super().__init__(**kwargs) - self.sensor_integration = sensor_integration - self.public_network_access = public_network_access + self.extension_version = extension_version + self.additional_api_properties = additional_api_properties -class FarmBeatsUpdateRequestModel(_serialization.Model): - """FarmBeats update request. +class ExtensionListResponse(_serialization.Model): + """Paged response contains list of requested objects and a URL link to get the next set of + results. - :ivar location: Geo-location where the resource lives. - :vartype location: str - :ivar identity: Identity for the resource. - :vartype identity: ~azure.mgmt.agrifood.models.Identity - :ivar properties: FarmBeats ARM Resource properties. - :vartype properties: ~azure.mgmt.agrifood.models.FarmBeatsUpdateProperties - :ivar tags: Resource tags. - :vartype tags: dict[str, str] + 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. + + :ivar value: List of requested objects. Required. + :vartype value: list[~azure.mgmt.agrifood.models.Extension] + :ivar skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :vartype skip_token: str + :ivar next_link: Continuation link (absolute URI) to the next page of results in the list. + :vartype next_link: str """ + _validation = { + "value": {"required": True}, + "next_link": {"readonly": True}, + } + _attribute_map = { - "location": {"key": "location", "type": "str"}, - "identity": {"key": "identity", "type": "Identity"}, - "properties": {"key": "properties", "type": "FarmBeatsUpdateProperties"}, - "tags": {"key": "tags", "type": "{str}"}, + "value": {"key": "value", "type": "[Extension]"}, + "skip_token": {"key": "$skipToken", "type": "str"}, + "next_link": {"key": "nextLink", "type": "str"}, } - def __init__( - self, - *, - location: Optional[str] = None, - identity: Optional["_models.Identity"] = None, - properties: Optional["_models.FarmBeatsUpdateProperties"] = None, - tags: Optional[Dict[str, str]] = None, - **kwargs - ): + def __init__(self, *, value: List["_models.Extension"], skip_token: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword location: Geo-location where the resource lives. - :paramtype location: str - :keyword identity: Identity for the resource. - :paramtype identity: ~azure.mgmt.agrifood.models.Identity - :keyword properties: FarmBeats ARM Resource properties. - :paramtype properties: ~azure.mgmt.agrifood.models.FarmBeatsUpdateProperties - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] + :keyword value: List of requested objects. Required. + :paramtype value: list[~azure.mgmt.agrifood.models.Extension] + :keyword skip_token: Token used in retrieving the next page. If null, there are no additional + pages. + :paramtype skip_token: str """ super().__init__(**kwargs) - self.location = location - self.identity = identity - self.properties = properties - self.tags = tags + self.value = value + self.skip_token = skip_token + self.next_link = None class Identity(_serialization.Model): @@ -1085,7 +1404,7 @@ class Identity(_serialization.Model): "type": {"key": "type", "type": "str"}, } - def __init__(self, *, type: Optional[Literal["SystemAssigned"]] = None, **kwargs): + def __init__(self, *, type: Optional[Literal["SystemAssigned"]] = None, **kwargs: Any) -> None: """ :keyword type: The identity type. Default value is "SystemAssigned". :paramtype type: str @@ -1096,250 +1415,44 @@ def __init__(self, *, type: Optional[Literal["SystemAssigned"]] = None, **kwargs self.type = type -class Insight(_serialization.Model): # pylint: disable=too-many-instance-attributes - """Insight. - - :ivar farmer_id: - :vartype farmer_id: str - :ivar model_id: - :vartype model_id: str - :ivar resource_type: - :vartype resource_type: str - :ivar resource_id: - :vartype resource_id: str - :ivar model_version: - :vartype model_version: str - :ivar insight_start_date_time: - :vartype insight_start_date_time: ~datetime.datetime - :ivar insight_end_date_time: - :vartype insight_end_date_time: ~datetime.datetime - :ivar measures: Dictionary of :code:``. - :vartype measures: dict[str, ~azure.mgmt.agrifood.models.Measure] - :ivar id: - :vartype id: str - :ivar status: - :vartype status: str - :ivar created_date_time: - :vartype created_date_time: ~datetime.datetime - :ivar modified_date_time: - :vartype modified_date_time: ~datetime.datetime - :ivar e_tag: - :vartype e_tag: str - :ivar name: - :vartype name: str - :ivar description: - :vartype description: str - :ivar properties: Dictionary of :code:``. - :vartype properties: dict[str, any] - """ - - _attribute_map = { - "farmer_id": {"key": "farmerId", "type": "str"}, - "model_id": {"key": "modelId", "type": "str"}, - "resource_type": {"key": "resourceType", "type": "str"}, - "resource_id": {"key": "resourceId", "type": "str"}, - "model_version": {"key": "modelVersion", "type": "str"}, - "insight_start_date_time": {"key": "insightStartDateTime", "type": "iso-8601"}, - "insight_end_date_time": {"key": "insightEndDateTime", "type": "iso-8601"}, - "measures": {"key": "measures", "type": "{Measure}"}, - "id": {"key": "id", "type": "str"}, - "status": {"key": "status", "type": "str"}, - "created_date_time": {"key": "createdDateTime", "type": "iso-8601"}, - "modified_date_time": {"key": "modifiedDateTime", "type": "iso-8601"}, - "e_tag": {"key": "eTag", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "properties": {"key": "properties", "type": "{object}"}, - } - - def __init__( - self, - *, - farmer_id: Optional[str] = None, - model_id: Optional[str] = None, - resource_type: Optional[str] = None, - resource_id: Optional[str] = None, - model_version: Optional[str] = None, - insight_start_date_time: Optional[datetime.datetime] = None, - insight_end_date_time: Optional[datetime.datetime] = None, - measures: Optional[Dict[str, "_models.Measure"]] = None, - id: Optional[str] = None, # pylint: disable=redefined-builtin - status: Optional[str] = None, - created_date_time: Optional[datetime.datetime] = None, - modified_date_time: Optional[datetime.datetime] = None, - e_tag: Optional[str] = None, - name: Optional[str] = None, - description: Optional[str] = None, - properties: Optional[Dict[str, Any]] = None, - **kwargs - ): - """ - :keyword farmer_id: - :paramtype farmer_id: str - :keyword model_id: - :paramtype model_id: str - :keyword resource_type: - :paramtype resource_type: str - :keyword resource_id: - :paramtype resource_id: str - :keyword model_version: - :paramtype model_version: str - :keyword insight_start_date_time: - :paramtype insight_start_date_time: ~datetime.datetime - :keyword insight_end_date_time: - :paramtype insight_end_date_time: ~datetime.datetime - :keyword measures: Dictionary of :code:``. - :paramtype measures: dict[str, ~azure.mgmt.agrifood.models.Measure] - :keyword id: - :paramtype id: str - :keyword status: - :paramtype status: str - :keyword created_date_time: - :paramtype created_date_time: ~datetime.datetime - :keyword modified_date_time: - :paramtype modified_date_time: ~datetime.datetime - :keyword e_tag: - :paramtype e_tag: str - :keyword name: - :paramtype name: str - :keyword description: - :paramtype description: str - :keyword properties: Dictionary of :code:``. - :paramtype properties: dict[str, any] - """ - super().__init__(**kwargs) - self.farmer_id = farmer_id - self.model_id = model_id - self.resource_type = resource_type - self.resource_id = resource_id - self.model_version = model_version - self.insight_start_date_time = insight_start_date_time - self.insight_end_date_time = insight_end_date_time - self.measures = measures - self.id = id - self.status = status - self.created_date_time = created_date_time - self.modified_date_time = modified_date_time - self.e_tag = e_tag - self.name = name - self.description = description - self.properties = properties +class KeyVaultProperties(_serialization.Model): + """Properties of the key vault. + All required parameters must be populated in order to send to Azure. -class InsightAttachment(_serialization.Model): # pylint: disable=too-many-instance-attributes - """InsightAttachment. - - :ivar insight_id: - :vartype insight_id: str - :ivar model_id: - :vartype model_id: str - :ivar resource_type: - :vartype resource_type: str - :ivar resource_id: - :vartype resource_id: str - :ivar file_link: - :vartype file_link: str - :ivar original_file_name: - :vartype original_file_name: str - :ivar farmer_id: - :vartype farmer_id: str - :ivar id: - :vartype id: str - :ivar status: - :vartype status: str - :ivar created_date_time: - :vartype created_date_time: ~datetime.datetime - :ivar modified_date_time: - :vartype modified_date_time: ~datetime.datetime - :ivar name: - :vartype name: str - :ivar description: - :vartype description: str - :ivar e_tag: - :vartype e_tag: str + :ivar key_vault_uri: Uri of the key vault. Required. + :vartype key_vault_uri: str + :ivar key_name: Name of Key Vault key. Required. + :vartype key_name: str + :ivar key_version: Version of Key Vault key. Required. + :vartype key_version: str """ + _validation = { + "key_vault_uri": {"required": True, "min_length": 1}, + "key_name": {"required": True, "min_length": 1}, + "key_version": {"required": True, "min_length": 1}, + } + _attribute_map = { - "insight_id": {"key": "insightId", "type": "str"}, - "model_id": {"key": "modelId", "type": "str"}, - "resource_type": {"key": "resourceType", "type": "str"}, - "resource_id": {"key": "resourceId", "type": "str"}, - "file_link": {"key": "fileLink", "type": "str"}, - "original_file_name": {"key": "originalFileName", "type": "str"}, - "farmer_id": {"key": "farmerId", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "status": {"key": "status", "type": "str"}, - "created_date_time": {"key": "createdDateTime", "type": "iso-8601"}, - "modified_date_time": {"key": "modifiedDateTime", "type": "iso-8601"}, - "name": {"key": "name", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "e_tag": {"key": "eTag", "type": "str"}, + "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, + "key_name": {"key": "keyName", "type": "str"}, + "key_version": {"key": "keyVersion", "type": "str"}, } - def __init__( - self, - *, - insight_id: Optional[str] = None, - model_id: Optional[str] = None, - resource_type: Optional[str] = None, - resource_id: Optional[str] = None, - file_link: Optional[str] = None, - original_file_name: Optional[str] = None, - farmer_id: Optional[str] = None, - id: Optional[str] = None, # pylint: disable=redefined-builtin - status: Optional[str] = None, - created_date_time: Optional[datetime.datetime] = None, - modified_date_time: Optional[datetime.datetime] = None, - name: Optional[str] = None, - description: Optional[str] = None, - e_tag: Optional[str] = None, - **kwargs - ): - """ - :keyword insight_id: - :paramtype insight_id: str - :keyword model_id: - :paramtype model_id: str - :keyword resource_type: - :paramtype resource_type: str - :keyword resource_id: - :paramtype resource_id: str - :keyword file_link: - :paramtype file_link: str - :keyword original_file_name: - :paramtype original_file_name: str - :keyword farmer_id: - :paramtype farmer_id: str - :keyword id: - :paramtype id: str - :keyword status: - :paramtype status: str - :keyword created_date_time: - :paramtype created_date_time: ~datetime.datetime - :keyword modified_date_time: - :paramtype modified_date_time: ~datetime.datetime - :keyword name: - :paramtype name: str - :keyword description: - :paramtype description: str - :keyword e_tag: - :paramtype e_tag: str + def __init__(self, *, key_vault_uri: str, key_name: str, key_version: str, **kwargs: Any) -> None: + """ + :keyword key_vault_uri: Uri of the key vault. Required. + :paramtype key_vault_uri: str + :keyword key_name: Name of Key Vault key. Required. + :paramtype key_name: str + :keyword key_version: Version of Key Vault key. Required. + :paramtype key_version: str """ super().__init__(**kwargs) - self.insight_id = insight_id - self.model_id = model_id - self.resource_type = resource_type - self.resource_id = resource_id - self.file_link = file_link - self.original_file_name = original_file_name - self.farmer_id = farmer_id - self.id = id - self.status = status - self.created_date_time = created_date_time - self.modified_date_time = modified_date_time - self.name = name - self.description = description - self.e_tag = e_tag + self.key_vault_uri = key_vault_uri + self.key_name = key_name + self.key_version = key_version class MarketplaceOfferDetails(_serialization.Model): @@ -1356,7 +1469,9 @@ class MarketplaceOfferDetails(_serialization.Model): "publisher_id": {"key": "publisherId", "type": "str"}, } - def __init__(self, *, saas_offer_id: Optional[str] = None, publisher_id: Optional[str] = None, **kwargs): + def __init__( + self, *, saas_offer_id: Optional[str] = None, publisher_id: Optional[str] = None, **kwargs: Any + ) -> None: """ :keyword saas_offer_id: :paramtype saas_offer_id: str @@ -1368,30 +1483,43 @@ def __init__(self, *, saas_offer_id: Optional[str] = None, publisher_id: Optiona self.publisher_id = publisher_id -class Measure(_serialization.Model): - """Measure. +class OAuthClientCredentials(AuthCredentials): + """OAuthClientCredentials for clientId clientSecret auth. + + All required parameters must be populated in order to send to Azure. - :ivar unit: - :vartype unit: str - :ivar value: - :vartype value: float + :ivar kind: Enum for different types of AuthCredentials supported. Required. Known values are: + "OAuthClientCredentials" and "ApiKeyAuthCredentials". + :vartype kind: str or ~azure.mgmt.agrifood.models.AuthCredentialsKind + :ivar client_id: ClientId associated with the provider. Required. + :vartype client_id: str + :ivar client_secret: Properties of the key vault. Required. + :vartype client_secret: ~azure.mgmt.agrifood.models.KeyVaultProperties """ + _validation = { + "kind": {"required": True}, + "client_id": {"required": True, "min_length": 1}, + "client_secret": {"required": True}, + } + _attribute_map = { - "unit": {"key": "unit", "type": "str"}, - "value": {"key": "value", "type": "float"}, + "kind": {"key": "kind", "type": "str"}, + "client_id": {"key": "clientId", "type": "str"}, + "client_secret": {"key": "clientSecret", "type": "KeyVaultProperties"}, } - def __init__(self, *, unit: Optional[str] = None, value: Optional[float] = None, **kwargs): + def __init__(self, *, client_id: str, client_secret: "_models.KeyVaultProperties", **kwargs: Any) -> None: """ - :keyword unit: - :paramtype unit: str - :keyword value: - :paramtype value: float + :keyword client_id: ClientId associated with the provider. Required. + :paramtype client_id: str + :keyword client_secret: Properties of the key vault. Required. + :paramtype client_secret: ~azure.mgmt.agrifood.models.KeyVaultProperties """ super().__init__(**kwargs) - self.unit = unit - self.value = value + self.kind: str = "OAuthClientCredentials" + self.client_id = client_id + self.client_secret = client_secret class Operation(_serialization.Model): @@ -1431,7 +1559,7 @@ class Operation(_serialization.Model): "action_type": {"key": "actionType", "type": "str"}, } - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs): + def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: """ :keyword display: Localized display information for this particular operation. :paramtype display: ~azure.mgmt.agrifood.models.OperationDisplay @@ -1477,7 +1605,7 @@ class OperationDisplay(_serialization.Model): "description": {"key": "description", "type": "str"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.provider = None @@ -1487,7 +1615,8 @@ def __init__(self, **kwargs): class OperationListResult(_serialization.Model): - """A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. + """A list of REST API operations supported by an Azure Resource Provider. It contains an URL link + to get the next set of results. Variables are only populated by the server, and will be ignored when sending a request. @@ -1507,7 +1636,7 @@ class OperationListResult(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.value = None @@ -1531,7 +1660,7 @@ class PrivateEndpoint(_serialization.Model): "id": {"key": "id", "type": "str"}, } - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.id = None @@ -1595,8 +1724,8 @@ def __init__( *, private_endpoint: Optional["_models.PrivateEndpoint"] = None, private_link_service_connection_state: Optional["_models.PrivateLinkServiceConnectionState"] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ :keyword private_endpoint: The private endpoint resource. :paramtype private_endpoint: ~azure.mgmt.agrifood.models.PrivateEndpoint @@ -1623,7 +1752,7 @@ class PrivateEndpointConnectionListResult(_serialization.Model): "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, } - def __init__(self, *, value: Optional[List["_models.PrivateEndpointConnection"]] = None, **kwargs): + def __init__(self, *, value: Optional[List["_models.PrivateEndpointConnection"]] = None, **kwargs: Any) -> None: """ :keyword value: Array of private endpoint connections. :paramtype value: list[~azure.mgmt.agrifood.models.PrivateEndpointConnection] @@ -1675,7 +1804,7 @@ class PrivateLinkResource(Resource): "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, } - def __init__(self, *, required_zone_names: Optional[List[str]] = None, **kwargs): + def __init__(self, *, required_zone_names: Optional[List[str]] = None, **kwargs: Any) -> None: """ :keyword required_zone_names: The private link resource private link DNS zone name. :paramtype required_zone_names: list[str] @@ -1697,7 +1826,7 @@ class PrivateLinkResourceListResult(_serialization.Model): "value": {"key": "value", "type": "[PrivateLinkResource]"}, } - def __init__(self, *, value: Optional[List["_models.PrivateLinkResource"]] = None, **kwargs): + def __init__(self, *, value: Optional[List["_models.PrivateLinkResource"]] = None, **kwargs: Any) -> None: """ :keyword value: Array of private link resources. :paramtype value: list[~azure.mgmt.agrifood.models.PrivateLinkResource] @@ -1707,7 +1836,8 @@ def __init__(self, *, value: Optional[List["_models.PrivateLinkResource"]] = Non class PrivateLinkServiceConnectionState(_serialization.Model): - """A collection of information about the state of the connection between service consumer and provider. + """A collection of information about the state of the connection between service consumer and + provider. :ivar status: Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. Known values are: "Pending", "Approved", and "Rejected". @@ -1731,8 +1861,8 @@ def __init__( status: Optional[Union[str, "_models.PrivateEndpointServiceConnectionStatus"]] = None, description: Optional[str] = None, actions_required: Optional[str] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ :keyword status: Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. Known values are: "Pending", "Approved", and "Rejected". @@ -1749,41 +1879,15 @@ def __init__( self.actions_required = actions_required -class ResourceParameter(_serialization.Model): - """ResourceParameter. - - :ivar resource_id_name: - :vartype resource_id_name: str - :ivar resource_type: - :vartype resource_type: str - """ - - _attribute_map = { - "resource_id_name": {"key": "resourceIdName", "type": "str"}, - "resource_type": {"key": "resourceType", "type": "str"}, - } - - def __init__(self, *, resource_id_name: Optional[str] = None, resource_type: Optional[str] = None, **kwargs): - """ - :keyword resource_id_name: - :paramtype resource_id_name: str - :keyword resource_type: - :paramtype resource_type: str - """ - super().__init__(**kwargs) - self.resource_id_name = resource_id_name - self.resource_type = resource_type - - class SensorIntegration(_serialization.Model): """Sensor integration request model. Variables are only populated by the server, and will be ignored when sending a request. - :ivar enabled: Sensor integration enable state. Allowed values are True, None. + :ivar enabled: Sensor integration enable state. :vartype enabled: str :ivar provisioning_state: Sensor integration instance provisioning state. Known values are: - "Creating", "Updating", "Deleting", "Succeeded", and "Failed". + "Creating", "Updating", "Deleting", "Succeeded", "Failed", and "Running". :vartype provisioning_state: str or ~azure.mgmt.agrifood.models.ProvisioningState :ivar provisioning_info: Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). @@ -1801,10 +1905,14 @@ class SensorIntegration(_serialization.Model): } def __init__( - self, *, enabled: Optional[str] = None, provisioning_info: Optional["_models.ErrorResponse"] = None, **kwargs - ): + self, + *, + enabled: Optional[str] = None, + provisioning_info: Optional["_models.ErrorResponse"] = None, + **kwargs: Any + ) -> None: """ - :keyword enabled: Sensor integration enable state. Allowed values are True, None. + :keyword enabled: Sensor integration enable state. :paramtype enabled: str :keyword provisioning_info: Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). @@ -1855,7 +1963,7 @@ class Solution(ProxyResource): "e_tag": {"key": "eTag", "type": "str"}, } - def __init__(self, *, properties: Optional["_models.SolutionProperties"] = None, **kwargs): + def __init__(self, *, properties: Optional["_models.SolutionProperties"] = None, **kwargs: Any) -> None: """ :keyword properties: Solution resource properties. :paramtype properties: ~azure.mgmt.agrifood.models.SolutionProperties @@ -1865,62 +1973,13 @@ def __init__(self, *, properties: Optional["_models.SolutionProperties"] = None, self.e_tag = None -class SolutionEvaluatedOutput(_serialization.Model): - """SolutionEvaluatedOutput. - - :ivar insight_response: - :vartype insight_response: ~azure.mgmt.agrifood.models.Insight - :ivar insight_attachment_response: - :vartype insight_attachment_response: ~azure.mgmt.agrifood.models.InsightAttachment - """ - - _attribute_map = { - "insight_response": {"key": "insightResponse", "type": "Insight"}, - "insight_attachment_response": {"key": "insightAttachmentResponse", "type": "InsightAttachment"}, - } - - def __init__( - self, - *, - insight_response: Optional["_models.Insight"] = None, - insight_attachment_response: Optional["_models.InsightAttachment"] = None, - **kwargs - ): - """ - :keyword insight_response: - :paramtype insight_response: ~azure.mgmt.agrifood.models.Insight - :keyword insight_attachment_response: - :paramtype insight_attachment_response: ~azure.mgmt.agrifood.models.InsightAttachment - """ - super().__init__(**kwargs) - self.insight_response = insight_response - self.insight_attachment_response = insight_attachment_response - - -class SolutionInstallationRequest(_serialization.Model): - """Solution Installation Request Body. - - :ivar properties: Solution resource properties. - :vartype properties: ~azure.mgmt.agrifood.models.SolutionProperties - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "SolutionProperties"}, - } - - def __init__(self, *, properties: Optional["_models.SolutionProperties"] = None, **kwargs): - """ - :keyword properties: Solution resource properties. - :paramtype properties: ~azure.mgmt.agrifood.models.SolutionProperties - """ - super().__init__(**kwargs) - self.properties = properties - - class SolutionListResponse(_serialization.Model): - """Paged response contains list of requested objects and a URL link to get the next set of results. + """Paged response contains list of requested objects and a URL link to get the next set of + results. + + All required parameters must be populated in order to send to Azure. - :ivar value: List of requested objects. + :ivar value: List of requested objects. Required. :vartype value: list[~azure.mgmt.agrifood.models.Solution] :ivar skip_token: Token used in retrieving the next page. If null, there are no additional pages. @@ -1929,6 +1988,10 @@ class SolutionListResponse(_serialization.Model): :vartype next_link: str """ + _validation = { + "value": {"required": True}, + } + _attribute_map = { "value": {"key": "value", "type": "[Solution]"}, "skip_token": {"key": "$skipToken", "type": "str"}, @@ -1938,13 +2001,13 @@ class SolutionListResponse(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.Solution"]] = None, + value: List["_models.Solution"], skip_token: Optional[str] = None, next_link: Optional[str] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ - :keyword value: List of requested objects. + :keyword value: List of requested objects. Required. :paramtype value: list[~azure.mgmt.agrifood.models.Solution] :keyword skip_token: Token used in retrieving the next page. If null, there are no additional pages. @@ -1968,8 +2031,6 @@ class SolutionProperties(_serialization.Model): :ivar additional_properties: Unmatched properties from the message are deserialized to this collection. :vartype additional_properties: dict[str, any] - :ivar solution_id: Solution Id. - :vartype solution_id: str :ivar partner_id: Partner Id of the Solution. :vartype partner_id: str :ivar saas_subscription_id: SaaS subscriptionId of the installed SaaS application. Required. @@ -1977,10 +2038,12 @@ class SolutionProperties(_serialization.Model): :ivar saas_subscription_name: SaaS subscription name of the installed SaaS application. Required. :vartype saas_subscription_name: str - :ivar marketplace_publisher_id: SaaS application Publisher Id. Required. + :ivar marketplace_publisher_id: SaaS application Marketplace Publisher Id. Required. :vartype marketplace_publisher_id: str :ivar plan_id: SaaS application Plan Id. Required. :vartype plan_id: str + :ivar role_assignment_id: Role Assignment Id. + :vartype role_assignment_id: str :ivar offer_id: SaaS application Offer Id. Required. :vartype offer_id: str :ivar term_id: SaaS application Term Id. Required. @@ -1988,7 +2051,6 @@ class SolutionProperties(_serialization.Model): """ _validation = { - "solution_id": {"readonly": True}, "partner_id": {"readonly": True}, "saas_subscription_id": {"required": True, "min_length": 1}, "saas_subscription_name": {"required": True, "min_length": 1}, @@ -2000,12 +2062,12 @@ class SolutionProperties(_serialization.Model): _attribute_map = { "additional_properties": {"key": "", "type": "{object}"}, - "solution_id": {"key": "solutionId", "type": "str"}, "partner_id": {"key": "partnerId", "type": "str"}, "saas_subscription_id": {"key": "saasSubscriptionId", "type": "str"}, "saas_subscription_name": {"key": "saasSubscriptionName", "type": "str"}, "marketplace_publisher_id": {"key": "marketplacePublisherId", "type": "str"}, "plan_id": {"key": "planId", "type": "str"}, + "role_assignment_id": {"key": "roleAssignmentId", "type": "str"}, "offer_id": {"key": "offerId", "type": "str"}, "term_id": {"key": "termId", "type": "str"}, } @@ -2020,8 +2082,9 @@ def __init__( offer_id: str, term_id: str, additional_properties: Optional[Dict[str, Any]] = None, - **kwargs - ): + role_assignment_id: Optional[str] = None, + **kwargs: Any + ) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this collection. @@ -2031,10 +2094,12 @@ def __init__( :keyword saas_subscription_name: SaaS subscription name of the installed SaaS application. Required. :paramtype saas_subscription_name: str - :keyword marketplace_publisher_id: SaaS application Publisher Id. Required. + :keyword marketplace_publisher_id: SaaS application Marketplace Publisher Id. Required. :paramtype marketplace_publisher_id: str :keyword plan_id: SaaS application Plan Id. Required. :paramtype plan_id: str + :keyword role_assignment_id: Role Assignment Id. + :paramtype role_assignment_id: str :keyword offer_id: SaaS application Offer Id. Required. :paramtype offer_id: str :keyword term_id: SaaS application Term Id. Required. @@ -2042,12 +2107,12 @@ def __init__( """ super().__init__(**kwargs) self.additional_properties = additional_properties - self.solution_id = None self.partner_id = None self.saas_subscription_id = saas_subscription_id self.saas_subscription_name = saas_subscription_name self.marketplace_publisher_id = marketplace_publisher_id self.plan_id = plan_id + self.role_assignment_id = role_assignment_id self.offer_id = offer_id self.term_id = term_id @@ -2089,8 +2154,8 @@ def __init__( last_modified_by: Optional[str] = None, last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, last_modified_at: Optional[datetime.datetime] = None, - **kwargs - ): + **kwargs: Any + ) -> None: """ :keyword created_by: The identity that created the resource. :paramtype created_by: str @@ -2128,7 +2193,7 @@ class UnitSystemsInfo(_serialization.Model): """ _validation = { - "key": {"required": True, "max_length": 100, "min_length": 2}, + "key": {"required": True, "max_length": 100, "min_length": 1}, "values": {"required": True}, } @@ -2137,7 +2202,7 @@ class UnitSystemsInfo(_serialization.Model): "values": {"key": "values", "type": "[str]"}, } - def __init__(self, *, key: str, values: List[str], **kwargs): + def __init__(self, *, key: str, values: List[str], **kwargs: Any) -> None: """ :keyword key: UnitSystem key sent as part of ProviderInput. Required. :paramtype key: str diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/__init__.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/__init__.py index a699d321e5688..d3a4dfdea6586 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/__init__.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/__init__.py @@ -6,10 +6,12 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- +from ._check_name_availability_operations import CheckNameAvailabilityOperations +from ._data_connectors_operations import DataConnectorsOperations +from ._data_manager_for_agriculture_extensions_operations import DataManagerForAgricultureExtensionsOperations +from ._data_manager_for_agriculture_resources_operations import DataManagerForAgricultureResourcesOperations +from ._operation_results_operations import OperationResultsOperations from ._extensions_operations import ExtensionsOperations -from ._farm_beats_extensions_operations import FarmBeatsExtensionsOperations -from ._farm_beats_models_operations import FarmBeatsModelsOperations -from ._locations_operations import LocationsOperations from ._operations import Operations from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations from ._private_link_resources_operations import PrivateLinkResourcesOperations @@ -21,10 +23,12 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ + "CheckNameAvailabilityOperations", + "DataConnectorsOperations", + "DataManagerForAgricultureExtensionsOperations", + "DataManagerForAgricultureResourcesOperations", + "OperationResultsOperations", "ExtensionsOperations", - "FarmBeatsExtensionsOperations", - "FarmBeatsModelsOperations", - "LocationsOperations", "Operations", "PrivateEndpointConnectionsOperations", "PrivateLinkResourcesOperations", diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_locations_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_check_name_availability_operations.py similarity index 81% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_locations_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_check_name_availability_operations.py index dd3937a138d13..35ab95c2adff4 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_locations_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_check_name_availability_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload from azure.core.exceptions import ( @@ -26,12 +26,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -43,9 +39,7 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -57,7 +51,7 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -70,14 +64,14 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) -class LocationsOperations: +class CheckNameAvailabilityOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.AgriFoodMgmtClient`'s - :attr:`locations` attribute. + :attr:`check_name_availability` attribute. """ models = _models @@ -91,12 +85,16 @@ def __init__(self, *args, **kwargs): @overload def check_name_availability( - self, body: _models.CheckNameAvailabilityRequest, *, content_type: str = "application/json", **kwargs: Any + self, + name_availability_request: _models.CheckNameAvailabilityRequest, + *, + content_type: str = "application/json", + **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Required. - :type body: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest + :param name_availability_request: NameAvailabilityRequest object. Required. + :type name_availability_request: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -108,12 +106,12 @@ def check_name_availability( @overload def check_name_availability( - self, body: IO, *, content_type: str = "application/json", **kwargs: Any + self, name_availability_request: IO, *, content_type: str = "application/json", **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Required. - :type body: IO + :param name_availability_request: NameAvailabilityRequest object. Required. + :type name_availability_request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -125,12 +123,13 @@ def check_name_availability( @distributed_trace def check_name_availability( - self, body: Union[_models.CheckNameAvailabilityRequest, IO], **kwargs: Any + self, name_availability_request: Union[_models.CheckNameAvailabilityRequest, IO], **kwargs: Any ) -> _models.CheckNameAvailabilityResponse: """Checks the name availability of the resource with requested resource name. - :param body: NameAvailabilityRequest object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest or IO + :param name_availability_request: NameAvailabilityRequest object. Is either a + CheckNameAvailabilityRequest type or a IO type. Required. + :type name_availability_request: ~azure.mgmt.agrifood.models.CheckNameAvailabilityRequest or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -150,19 +149,17 @@ def check_name_availability( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.CheckNameAvailabilityResponse] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(name_availability_request, (IOBase, bytes)): + _content = name_availability_request else: - _json = self._serialize.body(body, "CheckNameAvailabilityRequest") + _json = self._serialize.body(name_availability_request, "CheckNameAvailabilityRequest") request = build_check_name_availability_request( subscription_id=self._config.subscription_id, @@ -177,8 +174,9 @@ def check_name_availability( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_connectors_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_connectors_operations.py new file mode 100644 index 0000000000000..ba146494a321e --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_connectors_operations.py @@ -0,0 +1,659 @@ +# 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 +from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, overload +import urllib.parse + +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.paging import ItemPaged +from azure.core.pipeline import PipelineResponse +from azure.core.pipeline.transport import HttpResponse +from azure.core.rest import 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 .._serialization import Serializer +from .._vendor import _convert_request + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] + +_SERIALIZER = Serializer() +_SERIALIZER.client_side_validation = False + + +def build_get_request( + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_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-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}", + ) # pylint: disable=line-too-long + path_format_arguments = { + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + ), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), + "dataConnectorName": _SERIALIZER.url( + "data_connector_name", data_connector_name, "str", max_length=63, min_length=1 + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_create_or_update_request( + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_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-06-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}", + ) # pylint: disable=line-too-long + path_format_arguments = { + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + ), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), + "dataConnectorName": _SERIALIZER.url( + "data_connector_name", data_connector_name, "str", max_length=63, min_length=1 + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_delete_request( + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_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-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}", + ) # pylint: disable=line-too-long + path_format_arguments = { + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + ), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), + "dataConnectorName": _SERIALIZER.url( + "data_connector_name", data_connector_name, "str", max_length=63, min_length=1 + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_list_request( + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + subscription_id: str, + *, + max_page_size: int = 50, + skip_token: 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-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors", + ) # pylint: disable=line-too-long + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + ), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[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") + if max_page_size is not None: + _params["$maxPageSize"] = _SERIALIZER.query("max_page_size", max_page_size, "int", maximum=1000, minimum=10) + if skip_token is not None: + _params["$skipToken"] = _SERIALIZER.query("skip_token", skip_token, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +class DataConnectorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.agrifood.AgriFoodMgmtClient`'s + :attr:`data_connectors` 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_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + **kwargs: Any + ) -> _models.DataConnector: + """Get specific Data Connector resource by DataConnectorName. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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.DataConnector] = kwargs.pop("cls", None) + + request = build_get_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_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) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("DataConnector", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized + + get.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @overload + def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: _models.DataConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Required. + :type body: ~azure.mgmt.agrifood.models.DataConnector + :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: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: IO, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Required. + :type body: IO + :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: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + body: Union[_models.DataConnector, IO], + **kwargs: Any + ) -> _models.DataConnector: + """Create or update Data Connector For MADMA resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :param body: Body must be valid DataConnector request. Is either a DataConnector type or a IO + type. Required. + :type body: ~azure.mgmt.agrifood.models.DataConnector 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 + :return: DataConnector or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(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.DataConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _json = None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _json = self._serialize.body(body, "DataConnector") + + request = build_create_or_update_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + template_url=self.create_or_update.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if response.status_code == 200: + deserialized = self._deserialize("DataConnector", pipeline_response) + + if response.status_code == 201: + deserialized = self._deserialize("DataConnector", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + create_or_update.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + data_connector_name: str, + **kwargs: Any + ) -> None: + """Delete a Data Connectors with given dataConnector name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param data_connector_name: Connector name. Required. + :type data_connector_name: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 400: lambda response: HttpResponseError(response=response, error_format=ARMErrorFormat), + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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) + + request = build_delete_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + data_connector_name=data_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.delete.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) + + delete.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors/{dataConnectorName}" + } + + @distributed_trace + def list( + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + max_page_size: int = 50, + skip_token: Optional[str] = None, + **kwargs: Any + ) -> Iterable["_models.DataConnector"]: + """Lists the Data Connector Credentials for MADMA instance. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param max_page_size: Maximum number of items needed (inclusive). + Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. + :type max_page_size: int + :param skip_token: Continuation token for getting next set of results. 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 DataConnector or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.DataConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = 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.DataConnectorListResponse] = kwargs.pop("cls", None) + + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + request = build_list_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + max_page_size=max_page_size, + skip_token=skip_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) + + 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 = _convert_request(request) + request.url = self._client.format_url(request.url) + request.method = "GET" + return request + + def extract_data(pipeline_response): + deserialized = self._deserialize("DataConnectorListResponse", 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) + + list.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/dataConnectors" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_extensions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_extensions_operations.py similarity index 76% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_extensions_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_extensions_operations.py index f9ef406383508..d75671f5edb0e 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_extensions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_extensions_operations.py @@ -6,7 +6,6 @@ # 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, List, Optional, TypeVar import urllib.parse @@ -28,12 +27,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -53,9 +48,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -90,26 +83,28 @@ def build_list_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_get_request(farm_beats_extension_id: str, **kwargs: Any) -> HttpRequest: +def build_get_request(data_manager_for_agriculture_extension_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( - "template_url", "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{farmBeatsExtensionId}" + "template_url", + "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{dataManagerForAgricultureExtensionId}", ) # pylint: disable=line-too-long path_format_arguments = { - "farmBeatsExtensionId": _SERIALIZER.url( - "farm_beats_extension_id", farm_beats_extension_id, "str", pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$" + "dataManagerForAgricultureExtensionId": _SERIALIZER.url( + "data_manager_for_agriculture_extension_id", + data_manager_for_agriculture_extension_id, + "str", + pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$", ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -120,14 +115,14 @@ def build_get_request(farm_beats_extension_id: str, **kwargs: Any) -> HttpReques return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -class FarmBeatsExtensionsOperations: +class DataManagerForAgricultureExtensionsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.AgriFoodMgmtClient`'s - :attr:`farm_beats_extensions` attribute. + :attr:`data_manager_for_agriculture_extensions` attribute. """ models = _models @@ -148,12 +143,13 @@ def list( publisher_ids: Optional[List[str]] = None, max_page_size: int = 50, **kwargs: Any - ) -> Iterable["_models.FarmBeatsExtension"]: - """Get list of farmBeats extension. + ) -> Iterable["_models.DataManagerForAgricultureExtension"]: + """Get list of Data Manager For Agriculture extension. - :param farm_beats_extension_ids: FarmBeatsExtension ids. Default value is None. + :param farm_beats_extension_ids: DataManagerForAgricultureExtension ids. Default value is None. :type farm_beats_extension_ids: list[str] - :param farm_beats_extension_names: FarmBeats extension names. Default value is None. + :param farm_beats_extension_names: DataManagerForAgriculture extension names. Default value is + None. :type farm_beats_extension_names: list[str] :param extension_categories: Extension categories. Default value is None. :type extension_categories: list[str] @@ -163,17 +159,17 @@ def list( Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. :type max_page_size: int :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either FarmBeatsExtension or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.FarmBeatsExtension] + :return: An iterator like instance of either DataManagerForAgricultureExtension or the result + of cls(response) + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsExtensionListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureExtensionListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -219,7 +215,7 @@ def prepare_request(next_link=None): return request def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsExtensionListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureExtensionListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -228,8 +224,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -245,14 +242,17 @@ def get_next(next_link=None): list.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions"} @distributed_trace - def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.FarmBeatsExtension: - """Get farmBeats extension. - - :param farm_beats_extension_id: farmBeatsExtensionId to be queried. Required. - :type farm_beats_extension_id: str + def get( + self, data_manager_for_agriculture_extension_id: str, **kwargs: Any + ) -> _models.DataManagerForAgricultureExtension: + """Get Data Manager For Agriculture extension. + + :param data_manager_for_agriculture_extension_id: dataManagerForAgricultureExtensionId to be + queried. Required. + :type data_manager_for_agriculture_extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeatsExtension or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeatsExtension + :return: DataManagerForAgricultureExtension or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgricultureExtension :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -266,13 +266,11 @@ def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.FarmBeatsE _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsExtension] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureExtension] = kwargs.pop("cls", None) request = build_get_request( - farm_beats_extension_id=farm_beats_extension_id, + data_manager_for_agriculture_extension_id=data_manager_for_agriculture_extension_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -281,8 +279,9 @@ def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.FarmBeatsE request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -292,11 +291,13 @@ def get(self, farm_beats_extension_id: str, **kwargs: Any) -> _models.FarmBeatsE error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeatsExtension", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureExtension", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized - get.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{farmBeatsExtensionId}"} + get.metadata = { + "url": "/providers/Microsoft.AgFoodPlatform/farmBeatsExtensionDefinitions/{dataManagerForAgricultureExtensionId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_models_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_resources_operations.py similarity index 68% rename from sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_models_operations.py rename to sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_resources_operations.py index 4ac65808009e5..b25f041d7889a 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_farm_beats_models_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_data_manager_for_agriculture_resources_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, Callable, Dict, IO, Iterable, Optional, TypeVar, Union, cast, overload import urllib.parse @@ -30,12 +30,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -44,30 +40,35 @@ def build_get_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -79,31 +80,36 @@ def build_get_request( def build_create_or_update_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -117,31 +123,36 @@ def build_create_or_update_request( def build_update_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -155,30 +166,35 @@ def build_update_request( def build_delete_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -195,9 +211,7 @@ def build_list_by_subscription_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -206,7 +220,7 @@ def build_list_by_subscription_request( "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters if max_page_size is not None: @@ -232,9 +246,7 @@ def build_list_by_resource_group_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -249,7 +261,7 @@ def build_list_by_resource_group_request( "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters if max_page_size is not None: @@ -264,56 +276,14 @@ def build_list_by_resource_group_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_get_operation_result_request( - resource_group_name: str, - farm_beats_resource_name: str, - operation_results_id: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/operationResults/{operationResultsId}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), - "operationResultsId": _SERIALIZER.url( - "operation_results_id", operation_results_id, "str", pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" - ), - } - - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore - - # 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 FarmBeatsModelsOperations: +class DataManagerForAgricultureResourcesOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.agrifood.AgriFoodMgmtClient`'s - :attr:`farm_beats_models` attribute. + :attr:`data_manager_for_agriculture_resources` attribute. """ models = _models @@ -326,17 +296,20 @@ def __init__(self, *args, **kwargs): self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any) -> _models.FarmBeats: - """Get FarmBeats resource. + def get( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.DataManagerForAgriculture: + """Get DataManagerForAgriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -350,14 +323,12 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeats] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, template_url=self.get.metadata["url"], @@ -367,8 +338,9 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -378,7 +350,7 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) @@ -386,34 +358,36 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @overload def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: _models.FarmBeats, + data_manager_for_agriculture_resource_name: str, + request: _models.DataManagerForAgriculture, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeats + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. + Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :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: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ @@ -421,50 +395,57 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: IO, + data_manager_for_agriculture_resource_name: str, + request: IO, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Required. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. + Required. + :type request: IO :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: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace def create_or_update( - self, resource_group_name: str, farm_beats_resource_name: str, body: Union[_models.FarmBeats, IO], **kwargs: Any - ) -> _models.FarmBeats: - """Create or update FarmBeats resource. + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgriculture, IO], + **kwargs: Any + ) -> _models.DataManagerForAgriculture: + """Create or update Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: FarmBeats resource create or update request object. Is either a model type or a IO - type. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeats or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Data Manager For Agriculture resource create or update request object. Is + either a DataManagerForAgriculture type or a IO type. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgriculture 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 - :return: FarmBeats or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeats + :return: DataManagerForAgriculture or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgriculture :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -478,23 +459,21 @@ def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "FarmBeats") + _json = self._serialize.body(request, "DataManagerForAgriculture") request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -507,8 +486,9 @@ def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -519,10 +499,10 @@ def create_or_update( raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if response.status_code == 200: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if response.status_code == 201: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -530,16 +510,16 @@ def create_or_update( return deserialized # type: ignore create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } def _update_initial( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Union[_models.FarmBeatsUpdateRequestModel, IO], + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgricultureUpdateRequestModel, IO], **kwargs: Any - ) -> Optional[_models.FarmBeats]: + ) -> _models.DataManagerForAgriculture: error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -551,23 +531,21 @@ def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats]] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "FarmBeatsUpdateRequestModel") + _json = self._serialize.body(request, "DataManagerForAgricultureUpdateRequestModel") request = build_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -580,8 +558,9 @@ def _update_initial( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -591,42 +570,44 @@ def _update_initial( error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = None response_headers = {} if response.status_code == 200: - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if response.status_code == 202: response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) + if cls: - return cls(pipeline_response, deserialized, response_headers) + return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + return deserialized # type: ignore _update_initial.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @overload def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: _models.FarmBeatsUpdateRequestModel, + data_manager_for_agriculture_resource_name: str, + request: _models.DataManagerForAgricultureUpdateRequestModel, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> LROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeatsUpdateRequestModel + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateRequestModel :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -638,8 +619,9 @@ def begin_update( :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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of LROPoller that returns either DataManagerForAgriculture or the result + of cls(response) + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -647,21 +629,22 @@ def begin_update( def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: IO, + data_manager_for_agriculture_resource_name: str, + request: IO, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> LROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Required. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Required. + :type request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -673,8 +656,9 @@ def begin_update( :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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of LROPoller that returns either DataManagerForAgriculture or the result + of cls(response) + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -682,19 +666,21 @@ def begin_update( def begin_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Union[_models.FarmBeatsUpdateRequestModel, IO], + data_manager_for_agriculture_resource_name: str, + request: Union[_models.DataManagerForAgricultureUpdateRequestModel, IO], **kwargs: Any - ) -> LROPoller[_models.FarmBeats]: - """Update a FarmBeats resource. + ) -> LROPoller[_models.DataManagerForAgriculture]: + """Update a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Request object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.FarmBeatsUpdateRequestModel or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param request: Request object. Is either a DataManagerForAgricultureUpdateRequestModel type or + a IO type. Required. + :type request: ~azure.mgmt.agrifood.models.DataManagerForAgricultureUpdateRequestModel or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -706,26 +692,25 @@ def begin_update( :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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.FarmBeats] + :return: An instance of LROPoller that returns either DataManagerForAgriculture or the result + of cls(response) + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.FarmBeats] = kwargs.pop("cls", None) + cls: ClsType[_models.DataManagerForAgriculture] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._update_initial( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - body=body, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + request=request, api_version=api_version, content_type=content_type, cls=lambda x, y, z: x, @@ -736,7 +721,7 @@ def begin_update( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - deserialized = self._deserialize("FarmBeats", pipeline_response) + deserialized = self._deserialize("DataManagerForAgriculture", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized @@ -759,20 +744,21 @@ def get_long_running_output(pipeline_response): return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore begin_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any ) -> None: - """Delete a FarmBeats resource. + """Delete a Data Manager For Agriculture resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) :rtype: None @@ -789,14 +775,12 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, template_url=self.delete.metadata["url"], @@ -806,8 +790,9 @@ def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -821,14 +806,14 @@ def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}" } @distributed_trace def list_by_subscription( self, max_page_size: int = 50, skip_token: Optional[str] = None, **kwargs: Any - ) -> Iterable["_models.FarmBeats"]: - """Lists the FarmBeats instances for a subscription. + ) -> Iterable["_models.DataManagerForAgriculture"]: + """Lists the DataManagerForAgriculture instances for a subscription. :param max_page_size: Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. @@ -836,17 +821,16 @@ def list_by_subscription( :param skip_token: Skip token for getting next set of results. 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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.FarmBeats] + :return: An iterator like instance of either DataManagerForAgriculture or the result of + cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -890,7 +874,7 @@ def prepare_request(next_link=None): return request def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -899,8 +883,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -920,8 +905,8 @@ def get_next(next_link=None): @distributed_trace def list_by_resource_group( self, resource_group_name: str, max_page_size: int = 50, skip_token: Optional[str] = None, **kwargs: Any - ) -> Iterable["_models.FarmBeats"]: - """Lists the FarmBeats instances for a resource group. + ) -> Iterable["_models.DataManagerForAgriculture"]: + """Lists the DataManagerForAgriculture instances for a resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. @@ -932,17 +917,16 @@ def list_by_resource_group( :param skip_token: Continuation token for getting next set of results. 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 FarmBeats or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.FarmBeats] + :return: An iterator like instance of either DataManagerForAgriculture or the result of + cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgriculture] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -987,7 +971,7 @@ def prepare_request(next_link=None): return request def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -996,8 +980,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -1013,72 +998,3 @@ def get_next(next_link=None): list_by_resource_group.metadata = { "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats" } - - @distributed_trace - def get_operation_result( - self, resource_group_name: str, farm_beats_resource_name: str, operation_results_id: str, **kwargs: Any - ) -> _models.ArmAsyncOperation: - """Get operationResults for a FarmBeats resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param operation_results_id: The operation results id. Required. - :type operation_results_id: str - :keyword callable cls: A custom type or function that will be passed the direct response - :return: ArmAsyncOperation or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.ArmAsyncOperation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.ArmAsyncOperation] = kwargs.pop("cls", None) - - request = build_get_operation_result_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - operation_results_id=operation_results_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.get_operation_result.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - request.url = self._client.format_url(request.url) - - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmAsyncOperation", pipeline_response) - - if cls: - return cls(pipeline_response, deserialized, {}) - - return deserialized - - get_operation_result.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/operationResults/{operationResultsId}" - } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_extensions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_extensions_operations.py index 1fe7371bef2db..8d6ecebe2fe92 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_extensions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_extensions_operations.py @@ -6,7 +6,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 io import IOBase from typing import Any, Callable, Dict, IO, Iterable, List, Optional, TypeVar, Union, overload import urllib.parse @@ -28,12 +28,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -42,32 +38,41 @@ def build_create_or_update_request( - resource_group_name: str, farm_beats_resource_name: str, extension_id: str, subscription_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "extensionId": _SERIALIZER.url("extension_id", extension_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -81,31 +86,40 @@ def build_create_or_update_request( def build_get_request( - resource_group_name: str, farm_beats_resource_name: str, extension_id: str, subscription_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "extensionId": _SERIALIZER.url("extension_id", extension_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -117,31 +131,40 @@ def build_get_request( def build_delete_request( - resource_group_name: str, farm_beats_resource_name: str, extension_id: str, subscription_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "extensionId": _SERIALIZER.url("extension_id", extension_id, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -152,9 +175,9 @@ def build_delete_request( return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_by_farm_beats_request( +def build_list_by_data_manager_for_agriculture_request( resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, subscription_id: str, *, extension_ids: Optional[List[str]] = None, @@ -166,25 +189,30 @@ def build_list_by_farm_beats_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -230,22 +258,23 @@ def __init__(self, *args, **kwargs): def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[_models.ExtensionInstallationRequest] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :param request_body: Extension resource request body. Default value is None. @@ -263,22 +292,23 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[IO] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :param request_body: Extension resource request body. Default value is None. @@ -296,24 +326,25 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_id: str, request_body: Optional[Union[_models.ExtensionInstallationRequest, IO]] = None, **kwargs: Any ) -> _models.Extension: - """Install or Update extension. AdditionalApiProperties are merged patch and if the extension is - updated to a new version then the obsolete entries will be auto deleted from - AdditionalApiProperties. + """Install or Update extension. Additional Api Properties are merged patch and if the extension is + updated to a new version then the obsolete entries will be auto deleted from Additional Api + Properties. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str - :param request_body: Extension resource request body. Is either a model type or a IO type. - Default value is None. + :param request_body: Extension resource request body. Is either a ExtensionInstallationRequest + type or a IO type. Default value is None. :type request_body: ~azure.mgmt.agrifood.models.ExtensionInstallationRequest or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. @@ -334,16 +365,14 @@ def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.Extension] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(request_body, (IO, bytes)): + if isinstance(request_body, (IOBase, bytes)): _content = request_body else: if request_body is not None: @@ -353,7 +382,7 @@ def create_or_update( request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -367,43 +396,45 @@ def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code == 200: - deserialized = self._deserialize("Extension", pipeline_response) - - if response.status_code == 201: - deserialized = self._deserialize("Extension", pipeline_response) + deserialized = self._deserialize("Extension", pipeline_response) if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) - return deserialized # type: ignore + return deserialized create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace def get( - self, resource_group_name: str, farm_beats_resource_name: str, extension_id: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + **kwargs: Any ) -> _models.Extension: """Get installed extension details by extension id. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -422,14 +453,12 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.Extension] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -440,8 +469,9 @@ def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -459,20 +489,25 @@ def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, extension_id: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + extension_id: str, + **kwargs: Any ) -> None: """Uninstall extension. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_id: Id of extension resource. Required. :type extension_id: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -491,14 +526,12 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, extension_id=extension_id, subscription_id=self._config.subscription_id, api_version=api_version, @@ -509,8 +542,9 @@ def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -524,14 +558,14 @@ def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions/{extensionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions/{extensionId}" } @distributed_trace - def list_by_farm_beats( + def list_by_data_manager_for_agriculture( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, extension_ids: Optional[List[str]] = None, extension_categories: Optional[List[str]] = None, max_page_size: int = 50, @@ -543,8 +577,9 @@ def list_by_farm_beats( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param extension_ids: Installed extension ids. Default value is None. :type extension_ids: list[str] :param extension_categories: Installed extension categories. Default value is None. @@ -562,9 +597,7 @@ def list_by_farm_beats( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.ExtensionListResponse] = kwargs.pop("cls", None) error_map = { @@ -578,16 +611,16 @@ def list_by_farm_beats( def prepare_request(next_link=None): if not next_link: - request = build_list_by_farm_beats_request( + request = build_list_by_data_manager_for_agriculture_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, extension_ids=extension_ids, extension_categories=extension_categories, max_page_size=max_page_size, skip_token=skip_token, api_version=api_version, - template_url=self.list_by_farm_beats.metadata["url"], + template_url=self.list_by_data_manager_for_agriculture.metadata["url"], headers=_headers, params=_params, ) @@ -622,8 +655,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -636,6 +670,6 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) - list_by_farm_beats.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/extensions" + list_by_data_manager_for_agriculture.metadata = { + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/extensions" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operation_results_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operation_results_operations.py new file mode 100644 index 0000000000000..a3a598a804c7c --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operation_results_operations.py @@ -0,0 +1,145 @@ +# 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 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.pipeline.transport import HttpResponse +from azure.core.rest import 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 .._serialization import Serializer +from .._vendor import _convert_request + +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(locations: str, operation_results_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_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-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/providers/Microsoft.AgFoodPlatform/locations/{locations}/operationResults/{operationResultsId}", + ) # pylint: disable=line-too-long + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "locations": _SERIALIZER.url("locations", locations, "str"), + "operationResultsId": _SERIALIZER.url("operation_results_id", operation_results_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # 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 OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.agrifood.AgriFoodMgmtClient`'s + :attr:`operation_results` 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, locations: str, operation_results_id: str, **kwargs: Any) -> _models.ArmAsyncOperation: + """Get operationResults for a Data Manager For Agriculture resource. + + :param locations: Location. Required. + :type locations: str + :param operation_results_id: operationResultsId for a specific location. Required. + :type operation_results_id: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: ArmAsyncOperation or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.ArmAsyncOperation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = 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.ArmAsyncOperation] = kwargs.pop("cls", None) + + request = build_get_request( + locations=locations, + operation_results_id=operation_results_id, + 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) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("ArmAsyncOperation", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized + + get.metadata = { + "url": "/subscriptions/{subscriptionId}/providers/Microsoft.AgFoodPlatform/locations/{locations}/operationResults/{operationResultsId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operations.py index f83495de7159e..9b8d42c3f002c 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_operations.py @@ -6,7 +6,6 @@ # 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 @@ -30,10 +29,6 @@ from .._serialization import Serializer from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -45,9 +40,7 @@ def build_list_request(**kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -93,9 +86,7 @@ def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) error_map = { @@ -146,8 +137,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_endpoint_connections_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_endpoint_connections_operations.py index 7064b71fa5b31..69588320c0fd6 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_endpoint_connections_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_endpoint_connections_operations.py @@ -6,9 +6,8 @@ # 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, IO, Iterable, Optional, TypeVar, Union, cast, overload -import urllib.parse +from io import IOBase +from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload from azure.core.exceptions import ( ClientAuthenticationError, @@ -18,7 +17,6 @@ ResourceNotModifiedError, 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 @@ -30,12 +28,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -45,7 +39,7 @@ def build_create_or_update_request( resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, subscription_id: str, **kwargs: Any @@ -53,29 +47,34 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "privateEndpointConnectionName": _SERIALIZER.url( "private_endpoint_connection_name", private_endpoint_connection_name, "str" ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -90,7 +89,7 @@ def build_create_or_update_request( def build_get_request( resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, subscription_id: str, **kwargs: Any @@ -98,28 +97,33 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "privateEndpointConnectionName": _SERIALIZER.url( "private_endpoint_connection_name", private_endpoint_connection_name, "str" ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -132,7 +136,7 @@ def build_get_request( def build_delete_request( resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, subscription_id: str, **kwargs: Any @@ -140,28 +144,33 @@ def build_delete_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "privateEndpointConnectionName": _SERIALIZER.url( "private_endpoint_connection_name", private_endpoint_connection_name, "str" ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -173,30 +182,35 @@ def build_delete_request( def build_list_by_resource_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -230,9 +244,9 @@ def __init__(self, *args, **kwargs): def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: _models.PrivateEndpointConnection, + request: _models.PrivateEndpointConnection, *, content_type: str = "application/json", **kwargs: Any @@ -242,12 +256,13 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Required. - :type body: ~azure.mgmt.agrifood.models.PrivateEndpointConnection + :param request: Request object. Required. + :type request: ~azure.mgmt.agrifood.models.PrivateEndpointConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -261,9 +276,9 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: IO, + request: IO, *, content_type: str = "application/json", **kwargs: Any @@ -273,12 +288,13 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Required. - :type body: IO + :param request: Request object. Required. + :type request: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -292,9 +308,9 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, - body: Union[_models.PrivateEndpointConnection, IO], + request: Union[_models.PrivateEndpointConnection, IO], **kwargs: Any ) -> _models.PrivateEndpointConnection: """Approves or Rejects a Private endpoint connection request. @@ -302,12 +318,14 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str - :param body: Request object. Is either a model type or a IO type. Required. - :type body: ~azure.mgmt.agrifood.models.PrivateEndpointConnection or IO + :param request: Request object. Is either a PrivateEndpointConnection type or a IO type. + Required. + :type request: ~azure.mgmt.agrifood.models.PrivateEndpointConnection or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -321,29 +339,30 @@ def create_or_update( 404: ResourceNotFoundError, 409: ResourceExistsError, 304: ResourceNotModifiedError, + 400: lambda response: HttpResponseError( + response=response, model=self._deserialize(_models.ErrorResponse, response), error_format=ARMErrorFormat + ), } error_map.update(kwargs.pop("error_map", {}) or {}) _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.PrivateEndpointConnection] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request, (IOBase, bytes)): + _content = request else: - _json = self._serialize.body(body, "PrivateEndpointConnection") + _json = self._serialize.body(request, "PrivateEndpointConnection") request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -357,8 +376,9 @@ def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -376,14 +396,14 @@ def create_or_update( return deserialized create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } @distributed_trace def get( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> _models.PrivateEndpointConnection: @@ -392,8 +412,9 @@ def get( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -414,14 +435,12 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -432,8 +451,9 @@ def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -451,13 +471,13 @@ def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } def _delete_initial( # pylint: disable=inconsistent-return-statements self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> None: @@ -472,14 +492,12 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -490,8 +508,9 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -509,14 +528,14 @@ def _delete_initial( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, response_headers) _delete_initial.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } @distributed_trace def begin_delete( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, private_endpoint_connection_name: str, **kwargs: Any ) -> LROPoller[None]: @@ -525,8 +544,9 @@ def begin_delete( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param private_endpoint_connection_name: Private endpoint connection name. Required. :type private_endpoint_connection_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -544,9 +564,7 @@ def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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) @@ -554,7 +572,7 @@ def begin_delete( if cont_token is None: raw_result = self._delete_initial( # type: ignore resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, private_endpoint_connection_name=private_endpoint_connection_name, api_version=api_version, cls=lambda x, y, z: x, @@ -570,7 +588,7 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- if polling is True: polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) + PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) ) elif polling is False: polling_method = cast(PollingMethod, NoPolling()) @@ -586,34 +604,26 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- return LROPoller(self._client, raw_result, get_long_running_output, polling_method) # type: ignore begin_delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections/{privateEndpointConnectionName}" } @distributed_trace def list_by_resource( - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.PrivateEndpointConnectionListResult: """Get list of Private endpoint connections. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.PrivateEndpointConnection] + :return: PrivateEndpointConnectionListResult or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.PrivateEndpointConnectionListResult :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -622,63 +632,43 @@ def list_by_resource( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - request = build_list_by_resource_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.list_by_resource.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - 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 = _convert_request(request) - request.url = self._client.format_url(request.url) - request.method = "GET" - return request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - def get_next(next_link=None): - request = prepare_request(next_link) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - response = pipeline_response.http_response + request = build_list_by_resource_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.list_by_resource.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - return pipeline_response + if cls: + return cls(pipeline_response, deserialized, {}) - return ItemPaged(get_next, extract_data) + return deserialized list_by_resource.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateEndpointConnections" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateEndpointConnections" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_link_resources_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_link_resources_operations.py index bf324c15b990d..11dbca19bb75e 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_link_resources_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_private_link_resources_operations.py @@ -6,9 +6,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 +from typing import Any, Callable, Dict, Optional, TypeVar from azure.core.exceptions import ( ClientAuthenticationError, @@ -18,7 +16,6 @@ ResourceNotModifiedError, map_error, ) -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 @@ -28,12 +25,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -42,30 +35,35 @@ def build_list_by_resource_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, data_manager_for_agriculture_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -77,31 +75,40 @@ def build_list_by_resource_request( def build_get_request( - resource_group_name: str, farm_beats_resource_name: str, sub_resource_name: str, subscription_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + sub_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: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources/{subResourceName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources/{subResourceName}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "subResourceName": _SERIALIZER.url("sub_resource_name", sub_resource_name, "str"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -133,28 +140,21 @@ def __init__(self, *args, **kwargs): @distributed_trace def list_by_resource( - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateLinkResource"]: + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, **kwargs: Any + ) -> _models.PrivateLinkResourceListResult: """Get list of Private link resources. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.PrivateLinkResource] + :return: PrivateLinkResourceListResult or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.PrivateLinkResourceListResult :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) - error_map = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -163,78 +163,63 @@ def list_by_resource( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - request = build_list_by_resource_request( - resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - template_url=self.list_by_resource.metadata["url"], - headers=_headers, - params=_params, - ) - request = _convert_request(request) - 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 = _convert_request(request) - request.url = self._client.format_url(request.url) - request.method = "GET" - return request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) - - def get_next(next_link=None): - request = prepare_request(next_link) - - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, 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) + _headers = 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.PrivateLinkResourceListResult] = kwargs.pop("cls", None) + + request = build_list_by_resource_request( + resource_group_name=resource_group_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + template_url=self.list_by_resource.metadata["url"], + headers=_headers, + params=_params, + ) + request = _convert_request(request) + request.url = self._client.format_url(request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) + + if cls: + return cls(pipeline_response, deserialized, {}) + + return deserialized list_by_resource.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources" } @distributed_trace def get( - self, resource_group_name: str, farm_beats_resource_name: str, sub_resource_name: str, **kwargs: Any + self, + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + sub_resource_name: str, + **kwargs: Any ) -> _models.PrivateLinkResource: """Get Private link resource object. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param sub_resource_name: Sub resource name. Required. :type sub_resource_name: str :keyword callable cls: A custom type or function that will be passed the direct response @@ -255,14 +240,12 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, sub_resource_name=sub_resource_name, subscription_id=self._config.subscription_id, api_version=api_version, @@ -273,8 +256,9 @@ def get( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -292,5 +276,5 @@ def get( return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/privateLinkResources/{subResourceName}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/privateLinkResources/{subResourceName}" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_discoverability_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_discoverability_operations.py index 042db81dd18e9..f59cd233e4f27 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_discoverability_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_discoverability_operations.py @@ -6,7 +6,6 @@ # 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, List, Optional, TypeVar import urllib.parse @@ -28,12 +27,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -51,9 +46,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -80,26 +73,28 @@ def build_list_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_get_request(farm_beats_solution_id: str, **kwargs: Any) -> HttpRequest: +def build_get_request(data_manager_for_agriculture_solution_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( - "template_url", "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{farmBeatsSolutionId}" + "template_url", + "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{dataManagerForAgricultureSolutionId}", ) # pylint: disable=line-too-long path_format_arguments = { - "farmBeatsSolutionId": _SERIALIZER.url( - "farm_beats_solution_id", farm_beats_solution_id, "str", pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$" + "dataManagerForAgricultureSolutionId": _SERIALIZER.url( + "data_manager_for_agriculture_solution_id", + data_manager_for_agriculture_solution_id, + "str", + pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$", ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -136,30 +131,30 @@ def list( farm_beats_solution_names: Optional[List[str]] = None, max_page_size: int = 50, **kwargs: Any - ) -> Iterable["_models.FarmBeatsSolution"]: - """Get list of farmBeats solutions. + ) -> Iterable["_models.DataManagerForAgricultureSolution"]: + """Get list of Data Manager For Agriculture solutions. - :param farm_beats_solution_ids: Ids of FarmBeats Solutions which the customer requests to - fetch. Default value is None. + :param farm_beats_solution_ids: Ids of Data Manager For Agriculture Solutions which the + customer requests to fetch. Default value is None. :type farm_beats_solution_ids: list[str] - :param farm_beats_solution_names: Names of FarmBeats Solutions which the customer requests to - fetch. Default value is None. + :param farm_beats_solution_names: Names of Data Manager For Agriculture Solutions which the + customer requests to fetch. Default value is None. :type farm_beats_solution_names: list[str] :param max_page_size: Maximum number of items needed (inclusive). Minimum = 10, Maximum = 1000, Default value = 50. Default value is 50. :type max_page_size: int :keyword callable cls: A custom type or function that will be passed the direct response - :return: An iterator like instance of either FarmBeatsSolution or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.FarmBeatsSolution] + :return: An iterator like instance of either DataManagerForAgricultureSolution or the result of + cls(response) + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsSolutionListResponse] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureSolutionListResponse] = kwargs.pop("cls", None) error_map = { 401: ClientAuthenticationError, @@ -203,7 +198,7 @@ def prepare_request(next_link=None): return request def extract_data(pipeline_response): - deserialized = self._deserialize("FarmBeatsSolutionListResponse", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureSolutionListResponse", pipeline_response) list_of_elem = deserialized.value if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -212,8 +207,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -229,14 +225,17 @@ def get_next(next_link=None): list.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions"} @distributed_trace - def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmBeatsSolution: - """Get farmBeats solution by id. - - :param farm_beats_solution_id: farmBeatsSolutionId to be queried. Required. - :type farm_beats_solution_id: str + def get( + self, data_manager_for_agriculture_solution_id: str, **kwargs: Any + ) -> _models.DataManagerForAgricultureSolution: + """Get Data Manager For Agriculture solution by id. + + :param data_manager_for_agriculture_solution_id: dataManagerForAgricultureSolutionId to be + queried. Required. + :type data_manager_for_agriculture_solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response - :return: FarmBeatsSolution or the result of cls(response) - :rtype: ~azure.mgmt.agrifood.models.FarmBeatsSolution + :return: DataManagerForAgricultureSolution or the result of cls(response) + :rtype: ~azure.mgmt.agrifood.models.DataManagerForAgricultureSolution :raises ~azure.core.exceptions.HttpResponseError: """ error_map = { @@ -250,13 +249,11 @@ def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmBeatsSo _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) - cls: ClsType[_models.FarmBeatsSolution] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) + cls: ClsType[_models.DataManagerForAgricultureSolution] = kwargs.pop("cls", None) request = build_get_request( - farm_beats_solution_id=farm_beats_solution_id, + data_manager_for_agriculture_solution_id=data_manager_for_agriculture_solution_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -265,8 +262,9 @@ def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmBeatsSo request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -276,11 +274,13 @@ def get(self, farm_beats_solution_id: str, **kwargs: Any) -> _models.FarmBeatsSo error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("FarmBeatsSolution", pipeline_response) + deserialized = self._deserialize("DataManagerForAgricultureSolution", pipeline_response) if cls: return cls(pipeline_response, deserialized, {}) return deserialized - get.metadata = {"url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{farmBeatsSolutionId}"} + get.metadata = { + "url": "/providers/Microsoft.AgFoodPlatform/farmBeatsSolutionDefinitions/{dataManagerForAgricultureSolutionId}" + } diff --git a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_operations.py b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_operations.py index 27b3833cbc315..133e70226f054 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_operations.py +++ b/sdk/agrifood/azure-mgmt-agrifood/azure/mgmt/agrifood/operations/_solutions_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import datetime -import sys +from io import IOBase from typing import Any, Callable, Dict, IO, Iterable, List, Optional, TypeVar, Union, overload import urllib.parse @@ -29,12 +29,8 @@ from .. import models as _models from .._serialization import Serializer -from .._vendor import _convert_request, _format_url_section +from .._vendor import _convert_request -if sys.version_info >= (3, 8): - from typing import Literal # pylint: disable=no-name-in-module, ungrouped-imports -else: - from typing_extensions import Literal # type: ignore # pylint: disable=ungrouped-imports T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -43,32 +39,41 @@ def build_create_or_update_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, solution_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "solutionId": _SERIALIZER.url("solution_id", solution_id, "str", pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -82,31 +87,40 @@ def build_create_or_update_request( def build_get_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, solution_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "solutionId": _SERIALIZER.url("solution_id", solution_id, "str", pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -118,31 +132,40 @@ def build_get_request( def build_delete_request( - resource_group_name: str, farm_beats_resource_name: str, subscription_id: str, solution_id: str, **kwargs: Any + resource_group_name: str, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + subscription_id: str, + **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), "solutionId": _SERIALIZER.url("solution_id", solution_id, "str", pattern=r"^[a-zA-Z]{3,50}[.][a-zA-Z]{3,100}$"), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") @@ -155,7 +178,7 @@ def build_delete_request( def build_list_request( resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, subscription_id: str, *, solution_ids: Optional[List[str]] = None, @@ -174,27 +197,33 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", "2021-09-01-preview") - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-06-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions", ) # pylint: disable=line-too-long path_format_arguments = { "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 ), - "farmBeatsResourceName": _SERIALIZER.url("farm_beats_resource_name", farm_beats_resource_name, "str"), + "dataManagerForAgricultureResourceName": _SERIALIZER.url( + "data_manager_for_agriculture_resource_name", + data_manager_for_agriculture_resource_name, + "str", + max_length=63, + min_length=1, + pattern=r"^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$", + ), } - _url: str = _format_url_section(_url, **path_format_arguments) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") if solution_ids is not None: _params["solutionIds"] = [ _SERIALIZER.query("solution_ids", q, "str") if q is not None else "" for q in solution_ids @@ -225,7 +254,6 @@ def build_list_request( _params["$maxPageSize"] = _SERIALIZER.query("max_page_size", max_page_size, "int", maximum=1000, minimum=10) if skip_token is not None: _params["$skipToken"] = _SERIALIZER.query("skip_token", skip_token, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") @@ -256,8 +284,9 @@ def __init__(self, *args, **kwargs): def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[_models.SolutionInstallationRequest] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[_models.Solution] = None, *, content_type: str = "application/json", **kwargs: Any @@ -267,10 +296,13 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Default value is None. - :type body: ~azure.mgmt.agrifood.models.SolutionInstallationRequest + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Default value is None. + :type request_body: ~azure.mgmt.agrifood.models.Solution :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -284,8 +316,9 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[IO] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[IO] = None, *, content_type: str = "application/json", **kwargs: Any @@ -295,10 +328,13 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Default value is None. - :type body: IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Default value is None. + :type request_body: IO :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str @@ -312,8 +348,9 @@ def create_or_update( def create_or_update( self, resource_group_name: str, - farm_beats_resource_name: str, - body: Optional[Union[_models.SolutionInstallationRequest, IO]] = None, + data_manager_for_agriculture_resource_name: str, + solution_id: str, + request_body: Optional[Union[_models.Solution, IO]] = None, **kwargs: Any ) -> _models.Solution: """Install Or Update Solution. @@ -321,11 +358,14 @@ def create_or_update( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str - :param body: Solution resource request body. Is either a model type or a IO type. Default value - is None. - :type body: ~azure.mgmt.agrifood.models.SolutionInstallationRequest or IO + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str + :param request_body: Solution resource request body. Is either a Solution type or a IO type. + Default value is None. + :type request_body: ~azure.mgmt.agrifood.models.Solution or IO :keyword content_type: Body Parameter content-type. Known values are: 'application/json'. Default value is None. :paramtype content_type: str @@ -345,28 +385,26 @@ def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + 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.Solution] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(body, (IO, bytes)): - _content = body + if isinstance(request_body, (IOBase, bytes)): + _content = request_body else: - if body is not None: - _json = self._serialize.body(body, "SolutionInstallationRequest") + if request_body is not None: + _json = self._serialize.body(request_body, "Solution") else: _json = None request = build_create_or_update_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, content_type=content_type, json=_json, @@ -378,8 +416,9 @@ def create_or_update( request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -401,18 +440,23 @@ def create_or_update( return deserialized # type: ignore create_or_update.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace - def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any) -> _models.Solution: + def get( + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, solution_id: str, **kwargs: Any + ) -> _models.Solution: """Get installed Solution details by Solution id. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: Solution or the result of cls(response) :rtype: ~azure.mgmt.agrifood.models.Solution @@ -429,16 +473,14 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.Solution] = kwargs.pop("cls", None) request = build_get_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, template_url=self.get.metadata["url"], headers=_headers, @@ -447,8 +489,9 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -466,20 +509,23 @@ def get(self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: return deserialized get.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, farm_beats_resource_name: str, **kwargs: Any + self, resource_group_name: str, data_manager_for_agriculture_resource_name: str, solution_id: str, **kwargs: Any ) -> None: """Uninstall Solution. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str + :param solution_id: SolutionId for Data Manager For Agriculture Resource. Required. + :type solution_id: str :keyword callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) :rtype: None @@ -496,16 +542,14 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[None] = kwargs.pop("cls", None) request = build_delete_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, + solution_id=solution_id, subscription_id=self._config.subscription_id, - solution_id=self._config.solution_id, api_version=api_version, template_url=self.delete.metadata["url"], headers=_headers, @@ -514,8 +558,9 @@ def delete( # pylint: disable=inconsistent-return-statements request = _convert_request(request) request.url = self._client.format_url(request.url) + _stream = False pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - request, stream=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -529,14 +574,14 @@ def delete( # pylint: disable=inconsistent-return-statements return cls(pipeline_response, None, {}) delete.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions/{solutionId}" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions/{solutionId}" } @distributed_trace def list( self, resource_group_name: str, - farm_beats_resource_name: str, + data_manager_for_agriculture_resource_name: str, solution_ids: Optional[List[str]] = None, ids: Optional[List[str]] = None, names: Optional[List[str]] = None, @@ -555,8 +600,9 @@ def list( :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param farm_beats_resource_name: FarmBeats resource name. Required. - :type farm_beats_resource_name: str + :param data_manager_for_agriculture_resource_name: DataManagerForAgriculture resource name. + Required. + :type data_manager_for_agriculture_resource_name: str :param solution_ids: Installed Solution ids. Default value is None. :type solution_ids: list[str] :param ids: Ids of the resource. Default value is None. @@ -593,9 +639,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: Literal["2021-09-01-preview"] = kwargs.pop( - "api_version", _params.pop("api-version", self._config.api_version) - ) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) cls: ClsType[_models.SolutionListResponse] = kwargs.pop("cls", None) error_map = { @@ -611,7 +655,7 @@ def prepare_request(next_link=None): request = build_list_request( resource_group_name=resource_group_name, - farm_beats_resource_name=farm_beats_resource_name, + data_manager_for_agriculture_resource_name=data_manager_for_agriculture_resource_name, subscription_id=self._config.subscription_id, solution_ids=solution_ids, ids=ids, @@ -660,8 +704,9 @@ def extract_data(pipeline_response): 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=False, **kwargs + request, stream=_stream, **kwargs ) response = pipeline_response.http_response @@ -675,5 +720,5 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) list.metadata = { - "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{farmBeatsResourceName}/solutions" + "url": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AgFoodPlatform/farmBeats/{dataManagerForAgricultureResourceName}/solutions" } diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_available.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_already_exists.py similarity index 77% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_available.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_already_exists.py index 800d03955a0f3..d8b80820e0bf5 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_available.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_already_exists.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python locations_check_name_availability_available.py + python check_name_availability_check_name_availability_already_exists.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, @@ -26,16 +26,15 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.locations.check_name_availability( - body={"name": "newaccountname", "type": "Microsoft.AgFoodPlatform/farmBeats"}, + response = client.check_name_availability.check_name_availability( + name_availability_request={"name": "existingaccountname", "type": "Microsoft.AgFoodPlatform/farmBeats"}, ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Locations_CheckNameAvailability_Available.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/CheckNameAvailability_CheckNameAvailability_AlreadyExists.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_already_exists.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_available.py similarity index 78% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_already_exists.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_available.py index 97d29423ef67e..50a52518a9e49 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/locations_check_name_availability_already_exists.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/check_name_availability_check_name_availability_available.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python locations_check_name_availability_already_exists.py + python check_name_availability_check_name_availability_available.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, @@ -26,16 +26,15 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.locations.check_name_availability( - body={"name": "existingaccountname", "type": "Microsoft.AgFoodPlatform/farmBeats"}, + response = client.check_name_availability.check_name_availability( + name_availability_request={"name": "newaccountname", "type": "Microsoft.AgFoodPlatform/farmBeats"}, ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Locations_CheckNameAvailability_AlreadyExists.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/CheckNameAvailability_CheckNameAvailability_Available.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update_with_sensor.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_create_or_update.py similarity index 64% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update_with_sensor.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_create_or_update.py index 733de9ff19365..2484665f7eb5e 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update_with_sensor.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_create_or_update.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_update_with_sensor.py + python data_connectors_create_or_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, @@ -26,22 +26,29 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.begin_update( + response = client.data_connectors.create_or_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmBeatsResourceName", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", + data_connector_name="WeatherIBM", body={ - "identity": {"type": "SystemAssigned"}, - "properties": {"sensorIntegration": {"enabled": "True"}}, - "tags": {"key1": "value1", "key2": "value2"}, + "properties": { + "credentials": { + "apiKey": { + "keyName": "abcApiKey", + "keyVaultUri": "https://testKeyVault.vault.azure.net/", + "keyVersion": "239c0475c7d44f20b0fc27d3fe90a41d", + }, + "kind": "ApiKeyAuthCredentials", + } + } }, - ).result() + ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_UpdateWithSensor.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataConnectors_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_delete.py new file mode 100644 index 0000000000000..af656efecf031 --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_delete.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. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential +from azure.mgmt.agrifood import AgriFoodMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-agrifood +# USAGE + python data_connectors_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = AgriFoodMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="11111111-2222-3333-4444-555555555555", + ) + + client.data_connectors.delete( + resource_group_name="examples-rg", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", + data_connector_name="SatelliteSentinelHub", + ) + + +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataConnectors_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_get.py similarity index 81% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_delete.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_get.py index 42a3ac5a5a4f3..30fa3c31b3344 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_delete.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_get.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_delete.py + python data_connectors_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, @@ -26,17 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.delete( + response = client.data_connectors.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmBeatsResourceName", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", + data_connector_name="SatelliteSentinelHub", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_Delete.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataConnectors_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_resource_group.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_list.py similarity index 84% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_resource_group.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_list.py index 5c5f3e77bf4f7..c8a1305fc7afe 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_resource_group.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_connectors_list.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_list_by_resource_group.py + python data_connectors_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, @@ -26,17 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.list_by_resource_group( + response = client.data_connectors.list( resource_group_name="examples-rg", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", ) for item in response: print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_ListByResourceGroup.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataConnectors_List.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_get.py similarity index 81% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_get.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_get.py index bf600520b1335..c16f2368709ad 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_get.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_extensions_get.py + python data_manager_for_agriculture_extensions_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, @@ -26,16 +26,15 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="SUBSCRIPTION_ID", ) - response = client.farm_beats_extensions.get( - farm_beats_extension_id="DTN.ContentServices", + response = client.data_manager_for_agriculture_extensions.get( + data_manager_for_agriculture_extension_id="DTN.ContentServices", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsExtensions_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureExtensions_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_list.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_list.py similarity index 85% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_list.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_list.py index defa67c7e012f..8aa182cab25fa 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_extensions_list.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_extensions_list.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_extensions_list.py + python data_manager_for_agriculture_extensions_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, @@ -26,15 +26,14 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="SUBSCRIPTION_ID", ) - response = client.farm_beats_extensions.list() + response = client.data_manager_for_agriculture_extensions.list() for item in response: print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsExtensions_List.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureExtensions_List.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_create_or_update.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_create_or_update.py similarity index 75% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_create_or_update.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_create_or_update.py index 53e5b2f802312..e0718b2c1c6f1 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_create_or_update.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_create_or_update.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_create_or_update.py + python data_manager_for_agriculture_resources_create_or_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, @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.create_or_update( + response = client.data_manager_for_agriculture_resources.create_or_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", - body={"location": "eastus2", "tags": {"key1": "value1", "key2": "value2"}}, + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", + request={"location": "eastus2", "tags": {"key1": "value1", "key2": "value2"}}, ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_CreateOrUpdate.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_delete.py new file mode 100644 index 0000000000000..362937ef572b6 --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_delete.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. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential +from azure.mgmt.agrifood import AgriFoodMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-agrifood +# USAGE + python data_manager_for_agriculture_resources_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = AgriFoodMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="11111111-2222-3333-4444-555555555555", + ) + + client.data_manager_for_agriculture_resources.delete( + resource_group_name="examples-rg", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", + ) + + +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_get.py similarity index 81% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_get.py index bb511f03e9bc6..30ad613c322b3 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_get.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_get.py + python data_manager_for_agriculture_resources_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, @@ -26,17 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.get( + response = client.data_manager_for_agriculture_resources.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmBeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmBeatsResourceName", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_farm_beats.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_resource_group.py similarity index 82% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_farm_beats.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_resource_group.py index 10765da24ccf3..69c3dbc80564f 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_farm_beats.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_resource_group.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python extensions_list_by_farm_beats.py + python data_manager_for_agriculture_resources_list_by_resource_group.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, @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.extensions.list_by_farm_beats( + response = client.data_manager_for_agriculture_resources.list_by_resource_group( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", ) for item in response: print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Extensions_ListByFarmBeats.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_ListByResourceGroup.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_subscription.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_subscription.py similarity index 82% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_subscription.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_subscription.py index 047c313e49d23..e4f37dc058318 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_list_by_subscription.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_list_by_subscription.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_list_by_subscription.py + python data_manager_for_agriculture_resources_list_by_subscription.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, @@ -26,15 +26,14 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.list_by_subscription() + response = client.data_manager_for_agriculture_resources.list_by_subscription() for item in response: print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_ListBySubscription.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_ListBySubscription.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_update.py similarity index 77% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_update.py index 53f001ca6515f..0d8283f528103 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_update.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/data_manager_for_agriculture_resources_update.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_update.py + python data_manager_for_agriculture_resources_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, @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.begin_update( + response = client.data_manager_for_agriculture_resources.begin_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmBeatsResourceName", - body={"tags": {"key1": "value1", "key2": "value2"}}, + data_manager_for_agriculture_resource_name="examples-farmBeatsResourceName", + request={"tags": {"key1": "value1", "key2": "value2"}}, ).result() print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_Update.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/DataManagerForAgricultureResources_Update.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_create_or_update.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_create_or_update.py index afd0156202afa..77e1d96d970a3 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_create_or_update.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_create_or_update.py @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.extensions.create_or_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-dataManagerForAgricultureResourceName", extension_id="provider.extension", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Extensions_CreateOrUpdate.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Extensions_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_delete.py index 676b523c7ffae..1215aac90484c 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_delete.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_delete.py @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.extensions.delete( + client.extensions.delete( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", extension_id="provider.extension", ) - print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Extensions_Delete.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Extensions_Delete.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_get.py index c1890d35b83a3..cef30cd61eb07 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_get.py @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.extensions.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", extension_id="provider.extension", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Extensions_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Extensions_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_data_manager_for_agriculture.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_data_manager_for_agriculture.py new file mode 100644 index 0000000000000..19bbcd988dc61 --- /dev/null +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/extensions_list_by_data_manager_for_agriculture.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. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential +from azure.mgmt.agrifood import AgriFoodMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-agrifood +# USAGE + python extensions_list_by_data_manager_for_agriculture.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 = AgriFoodMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="11111111-2222-3333-4444-555555555555", + ) + + response = client.extensions.list_by_data_manager_for_agriculture( + resource_group_name="examples-rg", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Extensions_ListByDataManagerForAgriculture.json +if __name__ == "__main__": + main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get_operation_result.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operation_results_get.py similarity index 79% rename from sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get_operation_result.py rename to sdk/agrifood/azure-mgmt-agrifood/generated_samples/operation_results_get.py index 1d525d6f195ce..a4f58872488aa 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/farm_beats_models_get_operation_result.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operation_results_get.py @@ -14,7 +14,7 @@ pip install azure-identity pip install azure-mgmt-agrifood # USAGE - python farm_beats_models_get_operation_result.py + python operation_results_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, @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.farm_beats_models.get_operation_result( - resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmBeatsResourceName", + response = client.operation_results.get( + locations="westus", operation_results_id="resource-provisioning-id-farmBeatsResourceName", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/FarmBeatsModels_GetOperationResult.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/OperationResults_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operations_list.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operations_list.py index fe582f63f71d0..8ae5c580ece51 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operations_list.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/operations_list.py @@ -26,7 +26,6 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="SUBSCRIPTION_ID", ) @@ -35,6 +34,6 @@ def main(): print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Operations_List.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Operations_List.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_create_or_update.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_create_or_update.py index bb0fb59a9ff56..1b15056ff0fa2 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_create_or_update.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_create_or_update.py @@ -26,15 +26,14 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.private_endpoint_connections.create_or_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", private_endpoint_connection_name="privateEndpointConnectionName", - body={ + request={ "properties": { "privateLinkServiceConnectionState": { "description": "Approved by johndoe@contoso.com", @@ -46,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateEndpointConnections_CreateOrUpdate.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateEndpointConnections_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_delete.py index 39cfc031b0bb1..ca59b2029f290 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_delete.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_delete.py @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.private_endpoint_connections.begin_delete( + client.private_endpoint_connections.begin_delete( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", private_endpoint_connection_name="privateEndpointConnectionName", ).result() - print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateEndpointConnections_Delete.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateEndpointConnections_Delete.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_get.py index 952359030b85f..8d2fa1b0f5416 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_get.py @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.private_endpoint_connections.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", private_endpoint_connection_name="privateEndpointConnectionName", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateEndpointConnections_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateEndpointConnections_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_list_by_resource.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_list_by_resource.py index 5b3991089e105..143b04cab58ec 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_list_by_resource.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_endpoint_connections_list_by_resource.py @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.private_endpoint_connections.list_by_resource( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", ) - for item in response: - print(item) + print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateEndpointConnections_ListByResource.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateEndpointConnections_ListByResource.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_get.py index 01e60c5f8c00a..2c628cd992151 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_get.py @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.private_link_resources.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", sub_resource_name="farmbeats", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateLinkResources_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateLinkResources_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_list_by_resource.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_list_by_resource.py index 86d3a2fa27b1c..9f18e932b006d 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_list_by_resource.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/private_link_resources_list_by_resource.py @@ -26,18 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.private_link_resources.list_by_resource( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", ) - for item in response: - print(item) + print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/PrivateLinkResources_ListByResource.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/PrivateLinkResources_ListByResource.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_create_or_update.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_create_or_update.py index b20f0b3893932..b94f2e74ee335 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_create_or_update.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_create_or_update.py @@ -26,17 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="abc.partner", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.solutions.create_or_update( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", + solution_id="abc.partner", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Solutions_CreateOrUpdate.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Solutions_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_delete.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_delete.py index ce0dcc10145c9..9b8f8f2eee0d7 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_delete.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_delete.py @@ -26,17 +26,16 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="provider.solution", subscription_id="11111111-2222-3333-4444-555555555555", ) - response = client.solutions.delete( + client.solutions.delete( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", + solution_id="provider.solution", ) - print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Solutions_Delete.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Solutions_Delete.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_get.py index 39a2f3736e8b1..1ebd0eb72182c 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_get.py @@ -26,16 +26,15 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="SUBSCRIPTION_ID", ) response = client.solutions_discoverability.get( - farm_beats_solution_id="bayerAgPowered.gdu", + data_manager_for_agriculture_solution_id="bayerAgPowered.gdu", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/SolutionsDiscoverability_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/SolutionsDiscoverability_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_list.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_list.py index 0b480f416e65f..662c35b537989 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_list.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_discoverability_list.py @@ -26,7 +26,6 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="SUBSCRIPTION_ID", ) @@ -35,6 +34,6 @@ def main(): print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/SolutionsDiscoverability_List.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/SolutionsDiscoverability_List.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_get.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_get.py index eaea26aa3c9f7..db13af9d67d80 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_get.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_get.py @@ -26,17 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="provider.solution", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.solutions.get( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", + solution_id="provider.solution", ) print(response) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Solutions_Get.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Solutions_Get.json if __name__ == "__main__": main() diff --git a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_list.py b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_list.py index c0dc135cb12d1..5140ec1bb7b04 100644 --- a/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_list.py +++ b/sdk/agrifood/azure-mgmt-agrifood/generated_samples/solutions_list.py @@ -26,18 +26,17 @@ def main(): client = AgriFoodMgmtClient( credential=DefaultAzureCredential(), - solution_id="SOLUTION_ID", subscription_id="11111111-2222-3333-4444-555555555555", ) response = client.solutions.list( resource_group_name="examples-rg", - farm_beats_resource_name="examples-farmbeatsResourceName", + data_manager_for_agriculture_resource_name="examples-farmbeatsResourceName", ) for item in response: print(item) -# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2021-09-01-preview/examples/Solutions_List.json +# x-ms-original-file: specification/agrifood/resource-manager/Microsoft.AgFoodPlatform/preview/2023-06-01-preview/examples/Solutions_List.json if __name__ == "__main__": main()