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
16- from ._configuration import SCVMMConfiguration
18+ from ._configuration import ScVmmMgmtClientConfiguration
1719from ._serialization import Deserializer , Serializer
1820from .operations import (
1921 AvailabilitySetsOperations ,
2022 CloudsOperations ,
23+ GuestAgentsOperations ,
2124 InventoryItemsOperations ,
2225 Operations ,
26+ VirtualMachineInstancesOperations ,
2327 VirtualMachineTemplatesOperations ,
24- VirtualMachinesOperations ,
2528 VirtualNetworksOperations ,
29+ VmInstanceHybridIdentityMetadatasOperations ,
2630 VmmServersOperations ,
2731)
2832
3135 from azure .core .credentials import TokenCredential
3236
3337
34- class SCVMM : # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
38+ class ScVmmMgmtClient : # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes
3539 """The Microsoft.ScVmm Rest API spec.
3640
37- :ivar vmm_servers: VmmServersOperations operations
38- :vartype vmm_servers: azure.mgmt.scvmm.operations.VmmServersOperations
41+ :ivar virtual_machine_instances: VirtualMachineInstancesOperations operations
42+ :vartype virtual_machine_instances:
43+ azure.mgmt.scvmm.operations.VirtualMachineInstancesOperations
44+ :ivar guest_agents: GuestAgentsOperations operations
45+ :vartype guest_agents: azure.mgmt.scvmm.operations.GuestAgentsOperations
46+ :ivar vm_instance_hybrid_identity_metadatas: VmInstanceHybridIdentityMetadatasOperations
47+ operations
48+ :vartype vm_instance_hybrid_identity_metadatas:
49+ azure.mgmt.scvmm.operations.VmInstanceHybridIdentityMetadatasOperations
3950 :ivar operations: Operations operations
4051 :vartype operations: azure.mgmt.scvmm.operations.Operations
52+ :ivar availability_sets: AvailabilitySetsOperations operations
53+ :vartype availability_sets: azure.mgmt.scvmm.operations.AvailabilitySetsOperations
4154 :ivar clouds: CloudsOperations operations
4255 :vartype clouds: azure.mgmt.scvmm.operations.CloudsOperations
43- :ivar virtual_networks: VirtualNetworksOperations operations
44- :vartype virtual_networks: azure.mgmt.scvmm.operations.VirtualNetworksOperations
45- :ivar virtual_machines: VirtualMachinesOperations operations
46- :vartype virtual_machines: azure.mgmt.scvmm.operations.VirtualMachinesOperations
4756 :ivar virtual_machine_templates: VirtualMachineTemplatesOperations operations
4857 :vartype virtual_machine_templates:
4958 azure.mgmt.scvmm.operations.VirtualMachineTemplatesOperations
50- :ivar availability_sets: AvailabilitySetsOperations operations
51- :vartype availability_sets: azure.mgmt.scvmm.operations.AvailabilitySetsOperations
59+ :ivar virtual_networks: VirtualNetworksOperations operations
60+ :vartype virtual_networks: azure.mgmt.scvmm.operations.VirtualNetworksOperations
61+ :ivar vmm_servers: VmmServersOperations operations
62+ :vartype vmm_servers: azure.mgmt.scvmm.operations.VmmServersOperations
5263 :ivar inventory_items: InventoryItemsOperations operations
5364 :vartype inventory_items: azure.mgmt.scvmm.operations.InventoryItemsOperations
5465 :param credential: Credential needed for the client to connect to Azure. Required.
5566 :type credential: ~azure.core.credentials.TokenCredential
56- :param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g.
57- 00000000-0000-0000-0000-000000000000). Required.
67+ :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
5868 :type subscription_id: str
5969 :param base_url: Service URL. Default value is "https://management.azure.com".
6070 :type base_url: str
61- :keyword api_version: Api Version. Default value is "2020-06-05-preview ". Note that overriding
62- this default value may result in unsupported behavior.
71+ :keyword api_version: Api Version. Default value is "2023-10-07 ". Note that overriding this
72+ default value may result in unsupported behavior.
6373 :paramtype api_version: str
6474 :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
6575 Retry-After header is present.
@@ -72,31 +82,53 @@ def __init__(
7282 base_url : str = "https://management.azure.com" ,
7383 ** kwargs : Any
7484 ) -> None :
75- self ._config = SCVMMConfiguration (credential = credential , subscription_id = subscription_id , ** kwargs )
76- self ._client = ARMPipelineClient (base_url = base_url , config = self ._config , ** kwargs )
85+ self ._config = ScVmmMgmtClientConfiguration (credential = credential , subscription_id = subscription_id , ** kwargs )
86+ _policies = kwargs .pop ("policies" , None )
87+ if _policies is None :
88+ _policies = [
89+ policies .RequestIdPolicy (** kwargs ),
90+ self ._config .headers_policy ,
91+ self ._config .user_agent_policy ,
92+ self ._config .proxy_policy ,
93+ policies .ContentDecodePolicy (** kwargs ),
94+ ARMAutoResourceProviderRegistrationPolicy (),
95+ self ._config .redirect_policy ,
96+ self ._config .retry_policy ,
97+ self ._config .authentication_policy ,
98+ self ._config .custom_hook_policy ,
99+ self ._config .logging_policy ,
100+ policies .DistributedTracingPolicy (** kwargs ),
101+ policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
102+ self ._config .http_logging_policy ,
103+ ]
104+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , policies = _policies , ** kwargs )
77105
78106 client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
79107 self ._serialize = Serializer (client_models )
80108 self ._deserialize = Deserializer (client_models )
81109 self ._serialize .client_side_validation = False
82- self .vmm_servers = VmmServersOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
83- self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
84- self .clouds = CloudsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
85- self .virtual_networks = VirtualNetworksOperations (
110+ self .virtual_machine_instances = VirtualMachineInstancesOperations (
111+ self ._client , self ._config , self ._serialize , self ._deserialize
112+ )
113+ self .guest_agents = GuestAgentsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
114+ self .vm_instance_hybrid_identity_metadatas = VmInstanceHybridIdentityMetadatasOperations (
86115 self ._client , self ._config , self ._serialize , self ._deserialize
87116 )
88- self .virtual_machines = VirtualMachinesOperations (
117+ self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
118+ self .availability_sets = AvailabilitySetsOperations (
89119 self ._client , self ._config , self ._serialize , self ._deserialize
90120 )
121+ self .clouds = CloudsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
91122 self .virtual_machine_templates = VirtualMachineTemplatesOperations (
92123 self ._client , self ._config , self ._serialize , self ._deserialize
93124 )
94- self .availability_sets = AvailabilitySetsOperations (
125+ self .virtual_networks = VirtualNetworksOperations (
95126 self ._client , self ._config , self ._serialize , self ._deserialize
96127 )
128+ self .vmm_servers = VmmServersOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
97129 self .inventory_items = InventoryItemsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
98130
99- def _send_request (self , request : HttpRequest , ** kwargs : Any ) -> HttpResponse :
131+ def _send_request (self , request : HttpRequest , * , stream : bool = False , * *kwargs : Any ) -> HttpResponse :
100132 """Runs the network request through the client's chained policies.
101133
102134 >>> from azure.core.rest import HttpRequest
@@ -116,14 +148,14 @@ def _send_request(self, request: HttpRequest, **kwargs: Any) -> HttpResponse:
116148
117149 request_copy = deepcopy (request )
118150 request_copy .url = self ._client .format_url (request_copy .url )
119- return self ._client .send_request (request_copy , ** kwargs )
151+ return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
120152
121153 def close (self ) -> None :
122154 self ._client .close ()
123155
124- def __enter__ (self ) -> "SCVMM " :
156+ def __enter__ (self ) -> "ScVmmMgmtClient " :
125157 self ._client .__enter__ ()
126158 return self
127159
128- def __exit__ (self , * exc_details ) -> None :
160+ def __exit__ (self , * exc_details : Any ) -> None :
129161 self ._client .__exit__ (* exc_details )
0 commit comments