99from copy import deepcopy
1010from typing import Any , TYPE_CHECKING
1111
12+ from azure .core .pipeline import policies
1213from azure .core .rest import HttpRequest , HttpResponse
1314from azure .mgmt .core import ARMPipelineClient
15+ from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
1416
1517from . import models as _models
1618from ._configuration import MaintenanceManagementClientConfiguration
2628 MaintenanceConfigurationsOperations ,
2729 Operations ,
2830 PublicMaintenanceConfigurationsOperations ,
31+ ScheduledEventOperations ,
2932 UpdatesOperations ,
3033)
3134
3740class MaintenanceManagementClient : # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
3841 """Azure Maintenance Management Client.
3942
43+ :ivar scheduled_event: ScheduledEventOperations operations
44+ :vartype scheduled_event: azure.mgmt.maintenance.operations.ScheduledEventOperations
4045 :ivar public_maintenance_configurations: PublicMaintenanceConfigurationsOperations operations
4146 :vartype public_maintenance_configurations:
4247 azure.mgmt.maintenance.operations.PublicMaintenanceConfigurationsOperations
@@ -73,12 +78,11 @@ class MaintenanceManagementClient: # pylint: disable=client-accepts-api-version
7378 :vartype updates: azure.mgmt.maintenance.operations.UpdatesOperations
7479 :param credential: Credential needed for the client to connect to Azure. Required.
7580 :type credential: ~azure.core.credentials.TokenCredential
76- :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure
77- subscription. The subscription ID forms part of the URI for every service call. Required.
81+ :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
7882 :type subscription_id: str
7983 :param base_url: Service URL. Default value is "https://management.azure.com".
8084 :type base_url: str
81- :keyword api_version: Api Version. Default value is "2023-09 -01-preview". Note that overriding
85+ :keyword api_version: Api Version. Default value is "2023-10 -01-preview". Note that overriding
8286 this default value may result in unsupported behavior.
8387 :paramtype api_version: str
8488 """
@@ -93,12 +97,31 @@ def __init__(
9397 self ._config = MaintenanceManagementClientConfiguration (
9498 credential = credential , subscription_id = subscription_id , ** kwargs
9599 )
96- self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , config = self ._config , ** kwargs )
100+ _policies = kwargs .pop ("policies" , None )
101+ if _policies is None :
102+ _policies = [
103+ policies .RequestIdPolicy (** kwargs ),
104+ self ._config .headers_policy ,
105+ self ._config .user_agent_policy ,
106+ self ._config .proxy_policy ,
107+ policies .ContentDecodePolicy (** kwargs ),
108+ ARMAutoResourceProviderRegistrationPolicy (),
109+ self ._config .redirect_policy ,
110+ self ._config .retry_policy ,
111+ self ._config .authentication_policy ,
112+ self ._config .custom_hook_policy ,
113+ self ._config .logging_policy ,
114+ policies .DistributedTracingPolicy (** kwargs ),
115+ policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
116+ self ._config .http_logging_policy ,
117+ ]
118+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , policies = _policies , ** kwargs )
97119
98120 client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
99121 self ._serialize = Serializer (client_models )
100122 self ._deserialize = Deserializer (client_models )
101123 self ._serialize .client_side_validation = False
124+ self .scheduled_event = ScheduledEventOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
102125 self .public_maintenance_configurations = PublicMaintenanceConfigurationsOperations (
103126 self ._client , self ._config , self ._serialize , self ._deserialize
104127 )
@@ -127,7 +150,7 @@ def __init__(
127150 self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
128151 self .updates = UpdatesOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
129152
130- def _send_request (self , request : HttpRequest , ** kwargs : Any ) -> HttpResponse :
153+ def _send_request (self , request : HttpRequest , * , stream : bool = False , * *kwargs : Any ) -> HttpResponse :
131154 """Runs the network request through the client's chained policies.
132155
133156 >>> from azure.core.rest import HttpRequest
@@ -147,7 +170,7 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
147170
148171 request_copy = deepcopy (request )
149172 request_copy .url = self ._client .format_url (request_copy .url )
150- return self ._client .send_request (request_copy , ** kwargs )
173+ return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
151174
152175 def close (self ) -> None :
153176 self ._client .close ()
0 commit comments