77# --------------------------------------------------------------------------
88
99from copy import deepcopy
10- from typing import Any , TYPE_CHECKING
10+ from typing import Any , Optional , TYPE_CHECKING , cast
11+ from typing_extensions import Self
1112
13+ from azure .core .pipeline import policies
1214from azure .core .rest import HttpRequest , HttpResponse
15+ from azure .core .settings import settings
1316from azure .mgmt .core import ARMPipelineClient
17+ from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
18+ from azure .mgmt .core .tools import get_arm_endpoints
1419
1520from . import models as _models
1621from ._configuration import AgriFoodMgmtClientConfiguration
1722from ._serialization import Deserializer , Serializer
1823from .operations import (
24+ CheckNameAvailabilityOperations ,
25+ DataConnectorsOperations ,
26+ DataManagerForAgricultureExtensionsOperations ,
27+ DataManagerForAgricultureResourcesOperations ,
1928 ExtensionsOperations ,
20- FarmBeatsExtensionsOperations ,
21- FarmBeatsModelsOperations ,
22- LocationsOperations ,
29+ OperationResultsOperations ,
2330 Operations ,
2431 PrivateEndpointConnectionsOperations ,
2532 PrivateLinkResourcesOperations ,
2835)
2936
3037if TYPE_CHECKING :
31- # pylint: disable=unused-import,ungrouped-imports
3238 from azure .core .credentials import TokenCredential
3339
3440
35- class AgriFoodMgmtClient : # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
36- """APIs documentation for Azure AgFoodPlatform Resource Provider Service.
37-
41+ class AgriFoodMgmtClient : # pylint: disable=too-many-instance-attributes
42+ """APIs documentation for Microsoft Azure Data Manager for Agriculture Service.
43+
44+ :ivar check_name_availability: CheckNameAvailabilityOperations operations
45+ :vartype check_name_availability:
46+ azure.mgmt.agrifood.operations.CheckNameAvailabilityOperations
47+ :ivar data_connectors: DataConnectorsOperations operations
48+ :vartype data_connectors: azure.mgmt.agrifood.operations.DataConnectorsOperations
49+ :ivar data_manager_for_agriculture_extensions: DataManagerForAgricultureExtensionsOperations
50+ operations
51+ :vartype data_manager_for_agriculture_extensions:
52+ azure.mgmt.agrifood.operations.DataManagerForAgricultureExtensionsOperations
53+ :ivar data_manager_for_agriculture_resources: DataManagerForAgricultureResourcesOperations
54+ operations
55+ :vartype data_manager_for_agriculture_resources:
56+ azure.mgmt.agrifood.operations.DataManagerForAgricultureResourcesOperations
57+ :ivar operation_results: OperationResultsOperations operations
58+ :vartype operation_results: azure.mgmt.agrifood.operations.OperationResultsOperations
3859 :ivar extensions: ExtensionsOperations operations
3960 :vartype extensions: azure.mgmt.agrifood.operations.ExtensionsOperations
40- :ivar farm_beats_extensions: FarmBeatsExtensionsOperations operations
41- :vartype farm_beats_extensions: azure.mgmt.agrifood.operations.FarmBeatsExtensionsOperations
42- :ivar farm_beats_models: FarmBeatsModelsOperations operations
43- :vartype farm_beats_models: azure.mgmt.agrifood.operations.FarmBeatsModelsOperations
44- :ivar locations: LocationsOperations operations
45- :vartype locations: azure.mgmt.agrifood.operations.LocationsOperations
4661 :ivar operations: Operations operations
4762 :vartype operations: azure.mgmt.agrifood.operations.Operations
4863 :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations
@@ -57,44 +72,67 @@ class AgriFoodMgmtClient: # pylint: disable=client-accepts-api-version-keyword,
5772 azure.mgmt.agrifood.operations.SolutionsDiscoverabilityOperations
5873 :param credential: Credential needed for the client to connect to Azure. Required.
5974 :type credential: ~azure.core.credentials.TokenCredential
60- :param solution_id: Solution Id of the solution. Required.
61- :type solution_id: str
6275 :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
6376 :type subscription_id: str
64- :param base_url: Service URL. Default value is "https://management.azure.com" .
77+ :param base_url: Service URL. Default value is None .
6578 :type base_url: str
66- :keyword api_version: Api Version. Default value is "2021-09 -01-preview". Note that overriding
79+ :keyword api_version: Api Version. Default value is "2023-06 -01-preview". Note that overriding
6780 this default value may result in unsupported behavior.
6881 :paramtype api_version: str
6982 :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
7083 Retry-After header is present.
7184 """
7285
7386 def __init__ (
74- self ,
75- credential : "TokenCredential" ,
76- solution_id : str ,
77- subscription_id : str ,
78- base_url : str = "https://management.azure.com" ,
79- ** kwargs : Any
87+ self , credential : "TokenCredential" , subscription_id : str , base_url : Optional [str ] = None , ** kwargs : Any
8088 ) -> None :
89+ _cloud = kwargs .pop ("cloud_setting" , None ) or settings .current .azure_cloud # type: ignore
90+ _endpoints = get_arm_endpoints (_cloud )
91+ if not base_url :
92+ base_url = _endpoints ["resource_manager" ]
93+ credential_scopes = kwargs .pop ("credential_scopes" , _endpoints ["credential_scopes" ])
8194 self ._config = AgriFoodMgmtClientConfiguration (
82- credential = credential , solution_id = solution_id , subscription_id = subscription_id , ** kwargs
95+ credential = credential , subscription_id = subscription_id , credential_scopes = credential_scopes , ** kwargs
8396 )
84- self ._client = ARMPipelineClient (base_url = base_url , config = self ._config , ** kwargs )
97+
98+ _policies = kwargs .pop ("policies" , None )
99+ if _policies is None :
100+ _policies = [
101+ policies .RequestIdPolicy (** kwargs ),
102+ self ._config .headers_policy ,
103+ self ._config .user_agent_policy ,
104+ self ._config .proxy_policy ,
105+ policies .ContentDecodePolicy (** kwargs ),
106+ ARMAutoResourceProviderRegistrationPolicy (),
107+ self ._config .redirect_policy ,
108+ self ._config .retry_policy ,
109+ self ._config .authentication_policy ,
110+ self ._config .custom_hook_policy ,
111+ self ._config .logging_policy ,
112+ policies .DistributedTracingPolicy (** kwargs ),
113+ policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
114+ self ._config .http_logging_policy ,
115+ ]
116+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = cast (str , base_url ), policies = _policies , ** kwargs )
85117
86118 client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
87119 self ._serialize = Serializer (client_models )
88120 self ._deserialize = Deserializer (client_models )
89121 self ._serialize .client_side_validation = False
90- self .extensions = ExtensionsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
91- self .farm_beats_extensions = FarmBeatsExtensionsOperations (
122+ self .check_name_availability = CheckNameAvailabilityOperations (
123+ self ._client , self ._config , self ._serialize , self ._deserialize
124+ )
125+ self .data_connectors = DataConnectorsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
126+ self .data_manager_for_agriculture_extensions = DataManagerForAgricultureExtensionsOperations (
127+ self ._client , self ._config , self ._serialize , self ._deserialize
128+ )
129+ self .data_manager_for_agriculture_resources = DataManagerForAgricultureResourcesOperations (
92130 self ._client , self ._config , self ._serialize , self ._deserialize
93131 )
94- self .farm_beats_models = FarmBeatsModelsOperations (
132+ self .operation_results = OperationResultsOperations (
95133 self ._client , self ._config , self ._serialize , self ._deserialize
96134 )
97- self .locations = LocationsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
135+ self .extensions = ExtensionsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
98136 self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
99137 self .private_endpoint_connections = PrivateEndpointConnectionsOperations (
100138 self ._client , self ._config , self ._serialize , self ._deserialize
@@ -107,7 +145,7 @@ def __init__(
107145 self ._client , self ._config , self ._serialize , self ._deserialize
108146 )
109147
110- def _send_request (self , request : HttpRequest , ** kwargs : Any ) -> HttpResponse :
148+ def _send_request (self , request : HttpRequest , * , stream : bool = False , * *kwargs : Any ) -> HttpResponse :
111149 """Runs the network request through the client's chained policies.
112150
113151 >>> from azure.core.rest import HttpRequest
@@ -127,14 +165,14 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
127165
128166 request_copy = deepcopy (request )
129167 request_copy .url = self ._client .format_url (request_copy .url )
130- return self ._client .send_request (request_copy , ** kwargs )
168+ return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
131169
132170 def close (self ) -> None :
133171 self ._client .close ()
134172
135- def __enter__ (self ) -> "AgriFoodMgmtClient" :
173+ def __enter__ (self ) -> Self :
136174 self ._client .__enter__ ()
137175 return self
138176
139- def __exit__ (self , * exc_details ) -> None :
177+ def __exit__ (self , * exc_details : Any ) -> None :
140178 self ._client .__exit__ (* exc_details )
0 commit comments