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
10+ import sys
1011from typing import Any , Optional , TYPE_CHECKING , cast
11- from typing_extensions import Self
1212
1313from azure .core .pipeline import policies
1414from azure .core .rest import HttpRequest , HttpResponse
1717from azure .mgmt .core .policies import ARMAutoResourceProviderRegistrationPolicy
1818from azure .mgmt .core .tools import get_arm_endpoints
1919
20- from . import models as _models
2120from ._configuration import StorageCacheManagementClientConfiguration
2221from ._utils .serialization import Deserializer , Serializer
2322from .operations import (
2726 AutoExportJobsOperations ,
2827 AutoImportJobsOperations ,
2928 CachesOperations ,
29+ ExpansionJobsOperations ,
3030 ImportJobsOperations ,
3131 Operations ,
3232 SkusOperations ,
3636 _StorageCacheManagementClientOperationsMixin ,
3737)
3838
39+ if sys .version_info >= (3 , 11 ):
40+ from typing import Self
41+ else :
42+ from typing_extensions import Self # type: ignore
43+
3944if TYPE_CHECKING :
4045 from azure .core import AzureClouds
4146 from azure .core .credentials import TokenCredential
4449class StorageCacheManagementClient (
4550 _StorageCacheManagementClientOperationsMixin
4651): # pylint: disable=too-many-instance-attributes
47- """Azure Managed Lustre provides a fully managed Lustre® file system, integrated with Blob
48- storage, for use on demand. These operations create and manage Azure Managed Lustre file
49- systems .
52+ """A Storage Cache provides scalable caching service for NAS clients, serving data from either
53+ NFSv3 or Blob at-rest storage (referred to as "Storage Targets"). These operations allow you to
54+ manage Caches .
5055
56+ :ivar operations: Operations operations
57+ :vartype operations: azure.mgmt.storagecache.operations.Operations
5158 :ivar aml_filesystems: AmlFilesystemsOperations operations
5259 :vartype aml_filesystems: azure.mgmt.storagecache.operations.AmlFilesystemsOperations
5360 :ivar auto_export_jobs: AutoExportJobsOperations operations
@@ -56,8 +63,14 @@ class StorageCacheManagementClient(
5663 :vartype import_jobs: azure.mgmt.storagecache.operations.ImportJobsOperations
5764 :ivar auto_import_jobs: AutoImportJobsOperations operations
5865 :vartype auto_import_jobs: azure.mgmt.storagecache.operations.AutoImportJobsOperations
59- :ivar operations: Operations operations
60- :vartype operations: azure.mgmt.storagecache.operations.Operations
66+ :ivar expansion_jobs: ExpansionJobsOperations operations
67+ :vartype expansion_jobs: azure.mgmt.storagecache.operations.ExpansionJobsOperations
68+ :ivar caches: CachesOperations operations
69+ :vartype caches: azure.mgmt.storagecache.operations.CachesOperations
70+ :ivar storage_targets: StorageTargetsOperations operations
71+ :vartype storage_targets: azure.mgmt.storagecache.operations.StorageTargetsOperations
72+ :ivar storage_target: StorageTargetOperations operations
73+ :vartype storage_target: azure.mgmt.storagecache.operations.StorageTargetOperations
6174 :ivar skus: SkusOperations operations
6275 :vartype skus: azure.mgmt.storagecache.operations.SkusOperations
6376 :ivar usage_models: UsageModelsOperations operations
@@ -66,23 +79,18 @@ class StorageCacheManagementClient(
6679 :vartype asc_operations: azure.mgmt.storagecache.operations.AscOperationsOperations
6780 :ivar asc_usages: AscUsagesOperations operations
6881 :vartype asc_usages: azure.mgmt.storagecache.operations.AscUsagesOperations
69- :ivar caches: CachesOperations operations
70- :vartype caches: azure.mgmt.storagecache.operations.CachesOperations
71- :ivar storage_targets: StorageTargetsOperations operations
72- :vartype storage_targets: azure.mgmt.storagecache.operations.StorageTargetsOperations
73- :ivar storage_target: StorageTargetOperations operations
74- :vartype storage_target: azure.mgmt.storagecache.operations.StorageTargetOperations
75- :param credential: Credential needed for the client to connect to Azure. Required.
82+ :param credential: Credential used to authenticate requests to the service. Required.
7683 :type credential: ~azure.core.credentials.TokenCredential
77- :param subscription_id: The ID of the target subscription. Required.
84+ :param subscription_id: The ID of the target subscription. The value must be an UUID. Required.
7885 :type subscription_id: str
79- :param base_url: Service URL . Default value is None.
86+ :param base_url: Service host . Default value is None.
8087 :type base_url: str
8188 :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
8289 None.
8390 :paramtype cloud_setting: ~azure.core.AzureClouds
84- :keyword api_version: Api Version. Default value is "2025-07-01". Note that overriding this
85- default value may result in unsupported behavior.
91+ :keyword api_version: The API version to use for this operation. Known values are "2026-01-01"
92+ and None. Default value is None. If not set, the operation's default API version will be used.
93+ Note that overriding this default value may result in unsupported behavior.
8694 :paramtype api_version: str
8795 :keyword int polling_interval: Default waiting time between two polls for LRO operations if no
8896 Retry-After header is present.
@@ -97,6 +105,7 @@ def __init__(
97105 cloud_setting : Optional ["AzureClouds" ] = None ,
98106 ** kwargs : Any
99107 ) -> None :
108+ _endpoint = "{endpoint}"
100109 _cloud = cloud_setting or settings .current .azure_cloud # type: ignore
101110 _endpoints = get_arm_endpoints (_cloud )
102111 if not base_url :
@@ -105,6 +114,7 @@ def __init__(
105114 self ._config = StorageCacheManagementClientConfiguration (
106115 credential = credential ,
107116 subscription_id = subscription_id ,
117+ base_url = cast (str , base_url ),
108118 cloud_setting = cloud_setting ,
109119 credential_scopes = credential_scopes ,
110120 ** kwargs
@@ -128,32 +138,32 @@ def __init__(
128138 policies .SensitiveHeaderCleanupPolicy (** kwargs ) if self ._config .redirect_policy else None ,
129139 self ._config .http_logging_policy ,
130140 ]
131- self ._client : ARMPipelineClient = ARMPipelineClient (base_url = cast (str , base_url ), policies = _policies , ** kwargs )
141+ self ._client : ARMPipelineClient = ARMPipelineClient (base_url = cast (str , _endpoint ), policies = _policies , ** kwargs )
132142
133- client_models = {k : v for k , v in _models .__dict__ .items () if isinstance (v , type )}
134- self ._serialize = Serializer (client_models )
135- self ._deserialize = Deserializer (client_models )
143+ self ._serialize = Serializer ()
144+ self ._deserialize = Deserializer ()
136145 self ._serialize .client_side_validation = False
146+ self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
137147 self .aml_filesystems = AmlFilesystemsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
138148 self .auto_export_jobs = AutoExportJobsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
139149 self .import_jobs = ImportJobsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
140150 self .auto_import_jobs = AutoImportJobsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
141- self .operations = Operations (self ._client , self ._config , self ._serialize , self ._deserialize )
151+ self .expansion_jobs = ExpansionJobsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
152+ self .caches = CachesOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
153+ self .storage_targets = StorageTargetsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
154+ self .storage_target = StorageTargetOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
142155 self .skus = SkusOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
143156 self .usage_models = UsageModelsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
144157 self .asc_operations = AscOperationsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
145158 self .asc_usages = AscUsagesOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
146- self .caches = CachesOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
147- self .storage_targets = StorageTargetsOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
148- self .storage_target = StorageTargetOperations (self ._client , self ._config , self ._serialize , self ._deserialize )
149159
150- def _send_request (self , request : HttpRequest , * , stream : bool = False , ** kwargs : Any ) -> HttpResponse :
160+ def send_request (self , request : HttpRequest , * , stream : bool = False , ** kwargs : Any ) -> HttpResponse :
151161 """Runs the network request through the client's chained policies.
152162
153163 >>> from azure.core.rest import HttpRequest
154164 >>> request = HttpRequest("GET", "https://www.example.org/")
155165 <HttpRequest [GET], url: 'https://www.example.org/'>
156- >>> response = client._send_request (request)
166+ >>> response = client.send_request (request)
157167 <HttpResponse: 200 OK>
158168
159169 For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request
@@ -166,7 +176,11 @@ def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs:
166176 """
167177
168178 request_copy = deepcopy (request )
169- request_copy .url = self ._client .format_url (request_copy .url )
179+ path_format_arguments = {
180+ "endpoint" : self ._serialize .url ("self._config.base_url" , self ._config .base_url , "str" , skip_quote = True ),
181+ }
182+
183+ request_copy .url = self ._client .format_url (request_copy .url , ** path_format_arguments )
170184 return self ._client .send_request (request_copy , stream = stream , ** kwargs ) # type: ignore
171185
172186 def close (self ) -> None :
0 commit comments