22# --------------------------------------------------------------------------
33# Copyright (c) Microsoft Corporation. All rights reserved.
44# Licensed under the MIT License. See License.txt in the project root for license information.
5- # Code generated by Microsoft (R) AutoRest Code Generator.
5+ # Code generated by Microsoft (R) Python Code Generator.
66# Changes may cause incorrect behavior and will be lost if the code is regenerated.
77# --------------------------------------------------------------------------
88
99from copy import deepcopy
1010from typing import Any , TYPE_CHECKING
11+ from typing_extensions import Self
1112
1213from azure .core .pipeline import policies
1314from azure .core .rest import HttpRequest , HttpResponse
1415from azure .mgmt .core import ARMPipelineClient
1516from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
1617
17- from . import models as _models
1818from ._configuration import ScVmmMgmtClientConfiguration
1919from ._serialization import Deserializer , Serializer
2020from .operations import (
3131)
3232
3333if TYPE_CHECKING :
34- # pylint: disable=unused-import,ungrouped-imports
3534 from azure .core .credentials import TokenCredential
3635
3736
38- class ScVmmMgmtClient : # pylint: disable=client-accepts-api-version-keyword, too-many-instance-attributes
37+ class ScVmmMgmtClient : # pylint: disable=too-many-instance-attributes
3938 """The Microsoft.ScVmm Rest API spec.
4039
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
5040 :ivar operations: Operations operations
5141 :vartype operations: azure.mgmt.scvmm.operations.Operations
52- :ivar availability_sets: AvailabilitySetsOperations operations
53- :vartype availability_sets : azure.mgmt.scvmm.operations.AvailabilitySetsOperations
42+ :ivar vmm_servers: VmmServersOperations operations
43+ :vartype vmm_servers : azure.mgmt.scvmm.operations.VmmServersOperations
5444 :ivar clouds: CloudsOperations operations
5545 :vartype clouds: azure.mgmt.scvmm.operations.CloudsOperations
46+ :ivar virtual_networks: VirtualNetworksOperations operations
47+ :vartype virtual_networks: azure.mgmt.scvmm.operations.VirtualNetworksOperations
5648 :ivar virtual_machine_templates: VirtualMachineTemplatesOperations operations
5749 :vartype virtual_machine_templates:
5850 azure.mgmt.scvmm.operations.VirtualMachineTemplatesOperations
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
51+ :ivar availability_sets: AvailabilitySetsOperations operations
52+ :vartype availability_sets: azure.mgmt.scvmm.operations.AvailabilitySetsOperations
6353 :ivar inventory_items: InventoryItemsOperations operations
6454 :vartype inventory_items: azure.mgmt.scvmm.operations.InventoryItemsOperations
65- :param credential: Credential needed for the client to connect to Azure. Required.
55+ :ivar virtual_machine_instances: VirtualMachineInstancesOperations operations
56+ :vartype virtual_machine_instances:
57+ azure.mgmt.scvmm.operations.VirtualMachineInstancesOperations
58+ :ivar vm_instance_hybrid_identity_metadatas: VmInstanceHybridIdentityMetadatasOperations
59+ operations
60+ :vartype vm_instance_hybrid_identity_metadatas:
61+ azure.mgmt.scvmm.operations.VmInstanceHybridIdentityMetadatasOperations
62+ :ivar guest_agents: GuestAgentsOperations operations
63+ :vartype guest_agents: azure.mgmt.scvmm.operations.GuestAgentsOperations
64+ :param credential: Credential used to authenticate requests to the service. Required.
6665 :type credential: ~azure.core.credentials.TokenCredential
6766 :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
6867 :type subscription_id: str
69- :param base_url: Service URL . Default value is "https://management.azure.com".
68+ :param base_url: Service host . Default value is "https://management.azure.com".
7069 :type base_url: str
71- :keyword api_version: Api Version . Default value is "2023-10-07". Note that overriding this
72- default value may result in unsupported behavior.
70+ :keyword api_version: The API version to use for this operation . Default value is "2024-06-01".
71+ Note that overriding this default value may result in unsupported behavior.
7372 :paramtype api_version: str
7473 :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
7574 Retry-After header is present.
@@ -82,7 +81,10 @@ def __init__(
8281 base_url : str = "https://management.azure.com" ,
8382 ** kwargs : Any
8483 ) -> None :
85- self ._config = ScVmmMgmtClientConfiguration (credential = credential , subscription_id = subscription_id , ** kwargs )
84+ _endpoint = "{endpoint}"
85+ self ._config = ScVmmMgmtClientConfiguration (
86+ credential = credential , subscription_id = subscription_id , base_url = base_url , ** kwargs
87+ )
8688 _policies = kwargs .pop ("policies" , None )
8789 if _policies is None :
8890 _policies = [
@@ -101,40 +103,39 @@ def __init__(
101103 policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
102104 self ._config .http_logging_policy ,
103105 ]
104- self ._client : ARMPipelineClient = ARMPipelineClient (base_url = base_url , policies = _policies , ** kwargs )
106+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = _endpoint , policies = _policies , ** kwargs )
105107
106- client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
107- self ._serialize = Serializer (client_models )
108- self ._deserialize = Deserializer (client_models )
108+ self ._serialize = Serializer ()
109+ self ._deserialize = Deserializer ()
109110 self ._serialize .client_side_validation = False
110- self .virtual_machine_instances = VirtualMachineInstancesOperations (
111+ self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
112+ self .vmm_servers = VmmServersOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
113+ self .clouds = CloudsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
114+ self .virtual_networks = VirtualNetworksOperations (
111115 self ._client , self ._config , self ._serialize , self ._deserialize
112116 )
113- self .guest_agents = GuestAgentsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
114- self .vm_instance_hybrid_identity_metadatas = VmInstanceHybridIdentityMetadatasOperations (
117+ self .virtual_machine_templates = VirtualMachineTemplatesOperations (
115118 self ._client , self ._config , self ._serialize , self ._deserialize
116119 )
117- self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
118120 self .availability_sets = AvailabilitySetsOperations (
119121 self ._client , self ._config , self ._serialize , self ._deserialize
120122 )
121- self .clouds = CloudsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
122- self .virtual_machine_templates = VirtualMachineTemplatesOperations (
123+ self .inventory_items = InventoryItemsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
124+ self .virtual_machine_instances = VirtualMachineInstancesOperations (
123125 self ._client , self ._config , self ._serialize , self ._deserialize
124126 )
125- self .virtual_networks = VirtualNetworksOperations (
127+ self .vm_instance_hybrid_identity_metadatas = VmInstanceHybridIdentityMetadatasOperations (
126128 self ._client , self ._config , self ._serialize , self ._deserialize
127129 )
128- self .vmm_servers = VmmServersOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
129- self .inventory_items = InventoryItemsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
130+ self .guest_agents = GuestAgentsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
130131
131- def _send_request (self , request : HttpRequest , * , stream : bool = False , ** kwargs : Any ) -> HttpResponse :
132+ def send_request (self , request : HttpRequest , * , stream : bool = False , ** kwargs : Any ) -> HttpResponse :
132133 """Runs the network request through the client's chained policies.
133134
134135 >>> from azure.core.rest import HttpRequest
135136 >>> request = HttpRequest("GET", "https://www.example.org/")
136137 <HttpRequest [GET], url: 'https://www.example.org/'>
137- >>> response = client._send_request (request)
138+ >>> response = client.send_request (request)
138139 <HttpResponse: 200 OK>
139140
140141 For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request
@@ -147,13 +148,17 @@ def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs:
147148 """
148149
149150 request_copy = deepcopy (request )
150- request_copy .url = self ._client .format_url (request_copy .url )
151+ path_format_arguments = {
152+ "endpoint" : self ._serialize .url ("self._config.base_url" , self ._config .base_url , "str" , skip_quote = True ),
153+ }
154+
155+ request_copy .url = self ._client .format_url (request_copy .url , ** path_format_arguments )
151156 return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
152157
153158 def close (self ) -> None :
154159 self ._client .close ()
155160
156- def __enter__ (self ) -> "ScVmmMgmtClient" :
161+ def __enter__ (self ) -> Self :
157162 self ._client .__enter__ ()
158163 return self
159164
0 commit comments