Skip to content

Commit b20893f

Browse files
authored
[Key Vault] Add __(a)enter__ methods to user-facing clients (#35115)
1 parent c7bef72 commit b20893f

File tree

18 files changed

+64
-0
lines changed

18 files changed

+64
-0
lines changed

sdk/keyvault/azure-keyvault-administration/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
### Breaking Changes
88

99
### Bugs Fixed
10+
- Typing errors from using Key Vault clients as context managers have been fixed
11+
([#34744](https://github.com/Azure/azure-sdk-for-python/issues/34744))
1012

1113
### Other Changes
1214

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_access_control_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,3 +248,7 @@ def list_role_definitions(
248248
cls=lambda result: [KeyVaultRoleDefinition._from_generated(d) for d in result],
249249
**kwargs
250250
)
251+
252+
def __enter__(self) -> "KeyVaultAccessControlClient":
253+
self._client.__enter__()
254+
return self

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_backup_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,3 +247,7 @@ def begin_restore(self, folder_url: str, *args: str, **kwargs: Any) -> LROPoller
247247
polling=polling,
248248
**kwargs,
249249
)
250+
251+
def __enter__(self) -> "KeyVaultBackupClient":
252+
self._client.__enter__()
253+
return self

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_settings_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,3 +82,7 @@ def update_setting(self, setting: KeyVaultSetting, **kwargs: Any) -> KeyVaultSet
8282
**kwargs
8383
)
8484
return KeyVaultSetting._from_generated(result)
85+
86+
def __enter__(self) -> "KeyVaultSettingsClient":
87+
self._client.__enter__()
88+
return self

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_access_control_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,3 +249,7 @@ def list_role_definitions(
249249
cls=lambda result: [KeyVaultRoleDefinition._from_generated(d) for d in result],
250250
**kwargs
251251
)
252+
253+
async def __aenter__(self) -> "KeyVaultAccessControlClient":
254+
await self._client.__aenter__()
255+
return self

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_backup_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,3 +244,7 @@ async def begin_restore(self, folder_url: str, *args: str, **kwargs: Any) -> Asy
244244
polling=polling,
245245
**kwargs,
246246
)
247+
248+
async def __aenter__(self) -> "KeyVaultBackupClient":
249+
await self._client.__aenter__()
250+
return self

sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_settings_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,3 +85,7 @@ async def update_setting(self, setting: KeyVaultSetting, **kwargs: Any) -> KeyVa
8585
**kwargs
8686
)
8787
return KeyVaultSetting._from_generated(result)
88+
89+
async def __aenter__(self) -> "KeyVaultSettingsClient":
90+
await self._client.__aenter__()
91+
return self

sdk/keyvault/azure-keyvault-certificates/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
### Breaking Changes
88

99
### Bugs Fixed
10+
- Typing errors from using Key Vault clients as context managers have been fixed
11+
([#34744](https://github.com/Azure/azure-sdk-for-python/issues/34744))
1012

1113
### Other Changes
1214

sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1041,3 +1041,7 @@ def list_properties_of_issuers(self, **kwargs: Any) -> ItemPaged[IssuerPropertie
10411041
cls=lambda objs: [IssuerProperties._from_issuer_item(issuer_item=x) for x in objs],
10421042
**kwargs
10431043
)
1044+
1045+
def __enter__(self) -> "CertificateClient":
1046+
self._client.__enter__()
1047+
return self

sdk/keyvault/azure-keyvault-certificates/azure/keyvault/certificates/aio/_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1046,3 +1046,7 @@ def list_properties_of_issuers(self, **kwargs: Any) -> AsyncItemPaged[IssuerProp
10461046
cls=lambda objs: [IssuerProperties._from_issuer_item(x) for x in objs],
10471047
**kwargs
10481048
)
1049+
1050+
async def __aenter__(self) -> "CertificateClient":
1051+
await self._client.__aenter__()
1052+
return self

0 commit comments

Comments
 (0)