88
99from copy import deepcopy
1010from typing import Any , TYPE_CHECKING
11+ from typing_extensions import Self
1112
13+ from azure .core .pipeline import policies
1214from azure .core .rest import HttpRequest , HttpResponse
1315from azure .mgmt .core import ARMPipelineClient
16+ from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
1417
1518from . import models as _models
1619from ._configuration import DevHubMgmtClientConfiguration
1720from ._serialization import Deserializer , Serializer
18- from .operations import DevHubMgmtClientOperationsMixin , Operations , WorkflowOperations
21+ from .operations import (
22+ ADOOAuthOperations ,
23+ DevHubMgmtClientOperationsMixin ,
24+ IacProfilesOperations ,
25+ Operations ,
26+ TemplateOperations ,
27+ VersionedTemplateOperations ,
28+ WorkflowOperations ,
29+ )
1930
2031if TYPE_CHECKING :
21- # pylint: disable=unused-import,ungrouped-imports
2232 from azure .core .credentials import TokenCredential
2333
2434
25- class DevHubMgmtClient (DevHubMgmtClientOperationsMixin ): # pylint: disable=client-accepts-api-version-keyword
35+ class DevHubMgmtClient (DevHubMgmtClientOperationsMixin ): # pylint: disable=too-many-instance-attributes
2636 """The AKS Developer Hub Service Client.
2737
38+ :ivar iac_profiles: IacProfilesOperations operations
39+ :vartype iac_profiles: azure.mgmt.devhub.operations.IacProfilesOperations
2840 :ivar operations: Operations operations
2941 :vartype operations: azure.mgmt.devhub.operations.Operations
3042 :ivar workflow: WorkflowOperations operations
3143 :vartype workflow: azure.mgmt.devhub.operations.WorkflowOperations
44+ :ivar adoo_auth: ADOOAuthOperations operations
45+ :vartype adoo_auth: azure.mgmt.devhub.operations.ADOOAuthOperations
46+ :ivar template: TemplateOperations operations
47+ :vartype template: azure.mgmt.devhub.operations.TemplateOperations
48+ :ivar versioned_template: VersionedTemplateOperations operations
49+ :vartype versioned_template: azure.mgmt.devhub.operations.VersionedTemplateOperations
3250 :param credential: Credential needed for the client to connect to Azure. Required.
3351 :type credential: ~azure.core.credentials.TokenCredential
34- :param subscription_id: The ID of the target subscription. Required.
52+ :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
3553 :type subscription_id: str
3654 :param base_url: Service URL. Default value is "https://management.azure.com".
3755 :type base_url: str
38- :keyword api_version: Api Version. Default value is "2022-10-11 -preview". Note that overriding
56+ :keyword api_version: Api Version. Default value is "2025-03-01 -preview". Note that overriding
3957 this default value may result in unsupported behavior.
4058 :paramtype api_version: str
4159 """
@@ -48,16 +66,40 @@ def __init__(
4866 ** kwargs : Any
4967 ) -> None :
5068 self ._config = DevHubMgmtClientConfiguration (credential = credential , subscription_id = subscription_id , ** kwargs )
51- self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , config = self ._config , ** kwargs )
69+ _policies = kwargs .pop ("policies" , None )
70+ if _policies is None :
71+ _policies = [
72+ policies .RequestIdPolicy (** kwargs ),
73+ self ._config .headers_policy ,
74+ self ._config .user_agent_policy ,
75+ self ._config .proxy_policy ,
76+ policies .ContentDecodePolicy (** kwargs ),
77+ ARMAutoResourceProviderRegistrationPolicy (),
78+ self ._config .redirect_policy ,
79+ self ._config .retry_policy ,
80+ self ._config .authentication_policy ,
81+ self ._config .custom_hook_policy ,
82+ self ._config .logging_policy ,
83+ policies .DistributedTracingPolicy (** kwargs ),
84+ policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
85+ self ._config .http_logging_policy ,
86+ ]
87+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , policies = _policies , ** kwargs )
5288
5389 client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
5490 self ._serialize = Serializer (client_models )
5591 self ._deserialize = Deserializer (client_models )
5692 self ._serialize .client_side_validation = False
93+ self .iac_profiles = IacProfilesOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
5794 self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
5895 self .workflow = WorkflowOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
96+ self .adoo_auth = ADOOAuthOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
97+ self .template = TemplateOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
98+ self .versioned_template = VersionedTemplateOperations (
99+ self ._client , self ._config , self ._serialize , self ._deserialize
100+ )
59101
60- def _send_request (self , request : HttpRequest , ** kwargs : Any ) -> HttpResponse :
102+ def _send_request (self , request : HttpRequest , * , stream : bool = False , * *kwargs : Any ) -> HttpResponse :
61103 """Runs the network request through the client's chained policies.
62104
63105 >>> from azure.core.rest import HttpRequest
@@ -77,12 +119,12 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
77119
78120 request_copy = deepcopy (request )
79121 request_copy .url = self ._client .format_url (request_copy .url )
80- return self ._client .send_request (request_copy , ** kwargs )
122+ return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
81123
82124 def close (self ) -> None :
83125 self ._client .close ()
84126
85- def __enter__ (self ) -> "DevHubMgmtClient" :
127+ def __enter__ (self ) -> Self :
86128 self ._client .__enter__ ()
87129 return self
88130
0 commit comments