com.microsoft.azure.keyvault.KeyVaultClientBase Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-keyvault Show documentation
Show all versions of azure-keyvault Show documentation
This package contains Microsoft Azure Key Vault SDK.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
package com.microsoft.azure.keyvault;
import com.microsoft.azure.AzureClient;
import com.microsoft.azure.keyvault.models.BackupKeyResult;
import com.microsoft.azure.keyvault.models.BackupSecretResult;
import com.microsoft.azure.keyvault.models.BackupStorageResult;
import com.microsoft.azure.keyvault.models.CertificateAttributes;
import com.microsoft.azure.keyvault.models.CertificateBundle;
import com.microsoft.azure.keyvault.models.CertificateIssuerItem;
import com.microsoft.azure.keyvault.models.CertificateItem;
import com.microsoft.azure.keyvault.models.CertificateOperation;
import com.microsoft.azure.keyvault.models.CertificatePolicy;
import com.microsoft.azure.keyvault.models.Contacts;
import com.microsoft.azure.keyvault.models.DeletedCertificateBundle;
import com.microsoft.azure.keyvault.models.DeletedCertificateItem;
import com.microsoft.azure.keyvault.models.DeletedKeyBundle;
import com.microsoft.azure.keyvault.models.DeletedKeyItem;
import com.microsoft.azure.keyvault.models.DeletedSasDefinitionBundle;
import com.microsoft.azure.keyvault.models.DeletedSasDefinitionItem;
import com.microsoft.azure.keyvault.models.DeletedSecretBundle;
import com.microsoft.azure.keyvault.models.DeletedSecretItem;
import com.microsoft.azure.keyvault.models.DeletedStorageAccountItem;
import com.microsoft.azure.keyvault.models.DeletedStorageBundle;
import com.microsoft.azure.keyvault.models.IssuerAttributes;
import com.microsoft.azure.keyvault.models.IssuerBundle;
import com.microsoft.azure.keyvault.models.IssuerCredentials;
import com.microsoft.azure.keyvault.models.JsonWebKeyCurveName;
import com.microsoft.azure.keyvault.models.KeyAttributes;
import com.microsoft.azure.keyvault.models.KeyBundle;
import com.microsoft.azure.keyvault.models.KeyItem;
import com.microsoft.azure.keyvault.models.KeyOperationResult;
import com.microsoft.azure.keyvault.models.KeyVaultErrorException;
import com.microsoft.azure.keyvault.models.KeyVerifyResult;
import com.microsoft.azure.keyvault.models.OrganizationDetails;
import com.microsoft.azure.keyvault.models.SasDefinitionAttributes;
import com.microsoft.azure.keyvault.models.SasDefinitionBundle;
import com.microsoft.azure.keyvault.models.SasDefinitionItem;
import com.microsoft.azure.keyvault.models.SasTokenType;
import com.microsoft.azure.keyvault.models.SecretAttributes;
import com.microsoft.azure.keyvault.models.SecretBundle;
import com.microsoft.azure.keyvault.models.SecretItem;
import com.microsoft.azure.keyvault.models.StorageAccountAttributes;
import com.microsoft.azure.keyvault.models.StorageAccountItem;
import com.microsoft.azure.keyvault.models.StorageBundle;
import com.microsoft.azure.ListOperationCallback;
import com.microsoft.azure.Page;
import com.microsoft.azure.PagedList;
import com.microsoft.rest.RestClient;
import com.microsoft.rest.ServiceCallback;
import com.microsoft.rest.ServiceFuture;
import com.microsoft.rest.ServiceResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import rx.Observable;
import com.microsoft.azure.keyvault.webkey.JsonWebKey;
import com.microsoft.azure.keyvault.webkey.JsonWebKeyEncryptionAlgorithm;
import com.microsoft.azure.keyvault.webkey.JsonWebKeyOperation;
import com.microsoft.azure.keyvault.webkey.JsonWebKeySignatureAlgorithm;
import com.microsoft.azure.keyvault.webkey.JsonWebKeyType;
/**
* The interface for KeyVaultClientBase class.
*/
public interface KeyVaultClientBase {
/**
* Gets the REST client.
*
* @return the {@link RestClient} object.
*/
RestClient restClient();
/**
* Gets the {@link AzureClient} used for long running operations.
* @return the azure client;
*/
AzureClient getAzureClient();
/**
* Gets the User-Agent header for the client.
*
* @return the user agent string.
*/
String userAgent();
/**
* Gets Client API version..
*
* @return the apiVersion value.
*/
String apiVersion();
/**
* Gets Gets or sets the preferred language for the response..
*
* @return the acceptLanguage value.
*/
String acceptLanguage();
/**
* Sets Gets or sets the preferred language for the response..
*
* @param acceptLanguage the acceptLanguage value.
* @return the service client itself
*/
KeyVaultClientBase withAcceptLanguage(String acceptLanguage);
/**
* Gets Gets or sets the retry timeout in seconds for Long Running Operations. Default value is 30..
*
* @return the longRunningOperationRetryTimeout value.
*/
int longRunningOperationRetryTimeout();
/**
* Sets Gets or sets the retry timeout in seconds for Long Running Operations. Default value is 30..
*
* @param longRunningOperationRetryTimeout the longRunningOperationRetryTimeout value.
* @return the service client itself
*/
KeyVaultClientBase withLongRunningOperationRetryTimeout(int longRunningOperationRetryTimeout);
/**
* Gets When set to true a unique x-ms-client-request-id value is generated and included in each request. Default is true..
*
* @return the generateClientRequestId value.
*/
boolean generateClientRequestId();
/**
* Sets When set to true a unique x-ms-client-request-id value is generated and included in each request. Default is true..
*
* @param generateClientRequestId the generateClientRequestId value.
* @return the service client itself
*/
KeyVaultClientBase withGenerateClientRequestId(boolean generateClientRequestId);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle createKey(String vaultBaseUrl, String keyName, JsonWebKeyType kty);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture createKeyAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty, final ServiceCallback serviceCallback);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable createKeyAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> createKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @param keySize The key size in bytes. For example, 1024 or 2048.
* @param keyOps the List<JsonWebKeyOperation> value
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @param curve Elliptic curve name. For valid values, see JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', 'SECP256K1'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle createKey(String vaultBaseUrl, String keyName, JsonWebKeyType kty, Integer keySize, List keyOps, KeyAttributes keyAttributes, Map tags, JsonWebKeyCurveName curve);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @param keySize The key size in bytes. For example, 1024 or 2048.
* @param keyOps the List<JsonWebKeyOperation> value
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @param curve Elliptic curve name. For valid values, see JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', 'SECP256K1'
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture createKeyAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty, Integer keySize, List keyOps, KeyAttributes keyAttributes, Map tags, JsonWebKeyCurveName curve, final ServiceCallback serviceCallback);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @param keySize The key size in bytes. For example, 1024 or 2048.
* @param keyOps the List<JsonWebKeyOperation> value
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @param curve Elliptic curve name. For valid values, see JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', 'SECP256K1'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable createKeyAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty, Integer keySize, List keyOps, KeyAttributes keyAttributes, Map tags, JsonWebKeyCurveName curve);
/**
* Creates a new key, stores it, then returns key parameters and attributes to the client.
* The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name for the new key. The system will generate the version name for the new key.
* @param kty The type of key to create. For valid values, see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct'
* @param keySize The key size in bytes. For example, 1024 or 2048.
* @param keyOps the List<JsonWebKeyOperation> value
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @param curve Elliptic curve name. For valid values, see JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', 'SECP256K1'
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> createKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, JsonWebKeyType kty, Integer keySize, List keyOps, KeyAttributes keyAttributes, Map tags, JsonWebKeyCurveName curve);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle importKey(String vaultBaseUrl, String keyName, JsonWebKey key);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture importKeyAsync(String vaultBaseUrl, String keyName, JsonWebKey key, final ServiceCallback serviceCallback);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable importKeyAsync(String vaultBaseUrl, String keyName, JsonWebKey key);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> importKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, JsonWebKey key);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @param hsm Whether to import as a hardware key (HSM) or software key.
* @param keyAttributes The key management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle importKey(String vaultBaseUrl, String keyName, JsonWebKey key, Boolean hsm, KeyAttributes keyAttributes, Map tags);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @param hsm Whether to import as a hardware key (HSM) or software key.
* @param keyAttributes The key management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture importKeyAsync(String vaultBaseUrl, String keyName, JsonWebKey key, Boolean hsm, KeyAttributes keyAttributes, Map tags, final ServiceCallback serviceCallback);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @param hsm Whether to import as a hardware key (HSM) or software key.
* @param keyAttributes The key management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable importKeyAsync(String vaultBaseUrl, String keyName, JsonWebKey key, Boolean hsm, KeyAttributes keyAttributes, Map tags);
/**
* Imports an externally created key, stores it, and returns key parameters and attributes to the client.
* The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName Name for the imported key.
* @param key The Json web key
* @param hsm Whether to import as a hardware key (HSM) or software key.
* @param keyAttributes The key management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> importKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, JsonWebKey key, Boolean hsm, KeyAttributes keyAttributes, Map tags);
/**
* Deletes a key of any type from storage in Azure Key Vault.
* The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the DeletedKeyBundle object if successful.
*/
DeletedKeyBundle deleteKey(String vaultBaseUrl, String keyName);
/**
* Deletes a key of any type from storage in Azure Key Vault.
* The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to delete.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture deleteKeyAsync(String vaultBaseUrl, String keyName, final ServiceCallback serviceCallback);
/**
* Deletes a key of any type from storage in Azure Key Vault.
* The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedKeyBundle object
*/
Observable deleteKeyAsync(String vaultBaseUrl, String keyName);
/**
* Deletes a key of any type from storage in Azure Key Vault.
* The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedKeyBundle object
*/
Observable> deleteKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle updateKey(String vaultBaseUrl, String keyName, String keyVersion);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture updateKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, final ServiceCallback serviceCallback);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable updateKeyAsync(String vaultBaseUrl, String keyName, String keyVersion);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> updateKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @param keyOps Json web key operations. For more information on possible key operations, see JsonWebKeyOperation.
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle updateKey(String vaultBaseUrl, String keyName, String keyVersion, List keyOps, KeyAttributes keyAttributes, Map tags);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @param keyOps Json web key operations. For more information on possible key operations, see JsonWebKeyOperation.
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture updateKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, List keyOps, KeyAttributes keyAttributes, Map tags, final ServiceCallback serviceCallback);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @param keyOps Json web key operations. For more information on possible key operations, see JsonWebKeyOperation.
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable updateKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, List keyOps, KeyAttributes keyAttributes, Map tags);
/**
* The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.
* In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of key to update.
* @param keyVersion The version of the key to update.
* @param keyOps Json web key operations. For more information on possible key operations, see JsonWebKeyOperation.
* @param keyAttributes the KeyAttributes value
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> updateKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, List keyOps, KeyAttributes keyAttributes, Map tags);
/**
* Gets the public part of a stored key.
* The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to get.
* @param keyVersion Adding the version parameter retrieves a specific version of a key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle getKey(String vaultBaseUrl, String keyName, String keyVersion);
/**
* Gets the public part of a stored key.
* The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to get.
* @param keyVersion Adding the version parameter retrieves a specific version of a key.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture getKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, final ServiceCallback serviceCallback);
/**
* Gets the public part of a stored key.
* The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to get.
* @param keyVersion Adding the version parameter retrieves a specific version of a key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable getKeyAsync(String vaultBaseUrl, String keyName, String keyVersion);
/**
* Gets the public part of a stored key.
* The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key to get.
* @param keyVersion Adding the version parameter retrieves a specific version of a key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> getKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<KeyItem> object if successful.
*/
PagedList getKeyVersions(final String vaultBaseUrl, final String keyName);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getKeyVersionsAsync(final String vaultBaseUrl, final String keyName, final ListOperationCallback serviceCallback);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable> getKeyVersionsAsync(final String vaultBaseUrl, final String keyName);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable>> getKeyVersionsWithServiceResponseAsync(final String vaultBaseUrl, final String keyName);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<KeyItem> object if successful.
*/
PagedList getKeyVersions(final String vaultBaseUrl, final String keyName, final Integer maxresults);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getKeyVersionsAsync(final String vaultBaseUrl, final String keyName, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable> getKeyVersionsAsync(final String vaultBaseUrl, final String keyName, final Integer maxresults);
/**
* Retrieves a list of individual key versions with the same key name.
* The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable>> getKeyVersionsWithServiceResponseAsync(final String vaultBaseUrl, final String keyName, final Integer maxresults);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<KeyItem> object if successful.
*/
PagedList getKeys(final String vaultBaseUrl);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getKeysAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable> getKeysAsync(final String vaultBaseUrl);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable>> getKeysWithServiceResponseAsync(final String vaultBaseUrl);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<KeyItem> object if successful.
*/
PagedList getKeys(final String vaultBaseUrl, final Integer maxresults);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getKeysAsync(final String vaultBaseUrl, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable> getKeysAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* List keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<KeyItem> object
*/
Observable>> getKeysWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Requests that a backup of the specified key be downloaded to the client.
* The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the BackupKeyResult object if successful.
*/
BackupKeyResult backupKey(String vaultBaseUrl, String keyName);
/**
* Requests that a backup of the specified key be downloaded to the client.
* The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture backupKeyAsync(String vaultBaseUrl, String keyName, final ServiceCallback serviceCallback);
/**
* Requests that a backup of the specified key be downloaded to the client.
* The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BackupKeyResult object
*/
Observable backupKeyAsync(String vaultBaseUrl, String keyName);
/**
* Requests that a backup of the specified key be downloaded to the client.
* The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BackupKeyResult object
*/
Observable> backupKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName);
/**
* Restores a backed up key to a vault.
* Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyBundleBackup The backup blob associated with a key bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle restoreKey(String vaultBaseUrl, byte[] keyBundleBackup);
/**
* Restores a backed up key to a vault.
* Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyBundleBackup The backup blob associated with a key bundle.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture restoreKeyAsync(String vaultBaseUrl, byte[] keyBundleBackup, final ServiceCallback serviceCallback);
/**
* Restores a backed up key to a vault.
* Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyBundleBackup The backup blob associated with a key bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable restoreKeyAsync(String vaultBaseUrl, byte[] keyBundleBackup);
/**
* Restores a backed up key to a vault.
* Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyBundleBackup The backup blob associated with a key bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> restoreKeyWithServiceResponseAsync(String vaultBaseUrl, byte[] keyBundleBackup);
/**
* Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.
* The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyOperationResult object if successful.
*/
KeyOperationResult encrypt(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.
* The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture encryptAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value, final ServiceCallback serviceCallback);
/**
* Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.
* The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable encryptAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.
* The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable> encryptWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Decrypts a single block of encrypted data.
* The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyOperationResult object if successful.
*/
KeyOperationResult decrypt(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Decrypts a single block of encrypted data.
* The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture decryptAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value, final ServiceCallback serviceCallback);
/**
* Decrypts a single block of encrypted data.
* The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable decryptAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Decrypts a single block of encrypted data.
* The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable> decryptWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Creates a signature from a digest using the specified key.
* The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyOperationResult object if successful.
*/
KeyOperationResult sign(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] value);
/**
* Creates a signature from a digest using the specified key.
* The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param value the Base64Url value
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture signAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] value, final ServiceCallback serviceCallback);
/**
* Creates a signature from a digest using the specified key.
* The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable signAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] value);
/**
* Creates a signature from a digest using the specified key.
* The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable> signWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] value);
/**
* Verifies a signature using a specified key.
* The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param digest The digest used for signing.
* @param signature The signature to be verified.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyVerifyResult object if successful.
*/
KeyVerifyResult verify(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] digest, byte[] signature);
/**
* Verifies a signature using a specified key.
* The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param digest The digest used for signing.
* @param signature The signature to be verified.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture verifyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] digest, byte[] signature, final ServiceCallback serviceCallback);
/**
* Verifies a signature using a specified key.
* The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param digest The digest used for signing.
* @param signature The signature to be verified.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyVerifyResult object
*/
Observable verifyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] digest, byte[] signature);
/**
* Verifies a signature using a specified key.
* The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
* @param digest The digest used for signing.
* @param signature The signature to be verified.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyVerifyResult object
*/
Observable> verifyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeySignatureAlgorithm algorithm, byte[] digest, byte[] signature);
/**
* Wraps a symmetric key using a specified key.
* The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyOperationResult object if successful.
*/
KeyOperationResult wrapKey(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Wraps a symmetric key using a specified key.
* The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture wrapKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value, final ServiceCallback serviceCallback);
/**
* Wraps a symmetric key using a specified key.
* The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable wrapKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Wraps a symmetric key using a specified key.
* The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable> wrapKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Unwraps a symmetric key using the specified key that was initially used for wrapping that key.
* The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyOperationResult object if successful.
*/
KeyOperationResult unwrapKey(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Unwraps a symmetric key using the specified key that was initially used for wrapping that key.
* The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture unwrapKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value, final ServiceCallback serviceCallback);
/**
* Unwraps a symmetric key using the specified key that was initially used for wrapping that key.
* The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable unwrapKeyAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Unwraps a symmetric key using the specified key that was initially used for wrapping that key.
* The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param keyVersion The version of the key.
* @param algorithm algorithm identifier. Possible values include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5'
* @param value the Base64Url value
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyOperationResult object
*/
Observable> unwrapKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName, String keyVersion, JsonWebKeyEncryptionAlgorithm algorithm, byte[] value);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<DeletedKeyItem> object if successful.
*/
PagedList getDeletedKeys(final String vaultBaseUrl);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getDeletedKeysAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedKeyItem> object
*/
Observable> getDeletedKeysAsync(final String vaultBaseUrl);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedKeyItem> object
*/
Observable>> getDeletedKeysWithServiceResponseAsync(final String vaultBaseUrl);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<DeletedKeyItem> object if successful.
*/
PagedList getDeletedKeys(final String vaultBaseUrl, final Integer maxresults);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getDeletedKeysAsync(final String vaultBaseUrl, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedKeyItem> object
*/
Observable> getDeletedKeysAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Lists the deleted keys in the specified vault.
* Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedKeyItem> object
*/
Observable>> getDeletedKeysWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Gets the public part of a deleted key.
* The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the DeletedKeyBundle object if successful.
*/
DeletedKeyBundle getDeletedKey(String vaultBaseUrl, String keyName);
/**
* Gets the public part of a deleted key.
* The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture getDeletedKeyAsync(String vaultBaseUrl, String keyName, final ServiceCallback serviceCallback);
/**
* Gets the public part of a deleted key.
* The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedKeyBundle object
*/
Observable getDeletedKeyAsync(String vaultBaseUrl, String keyName);
/**
* Gets the public part of a deleted key.
* The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedKeyBundle object
*/
Observable> getDeletedKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName);
/**
* Permanently deletes the specified key.
* The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
*/
void purgeDeletedKey(String vaultBaseUrl, String keyName);
/**
* Permanently deletes the specified key.
* The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture purgeDeletedKeyAsync(String vaultBaseUrl, String keyName, final ServiceCallback serviceCallback);
/**
* Permanently deletes the specified key.
* The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
Observable purgeDeletedKeyAsync(String vaultBaseUrl, String keyName);
/**
* Permanently deletes the specified key.
* The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the key
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
Observable> purgeDeletedKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName);
/**
* Recovers the deleted key to its latest version.
* The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the deleted key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the KeyBundle object if successful.
*/
KeyBundle recoverDeletedKey(String vaultBaseUrl, String keyName);
/**
* Recovers the deleted key to its latest version.
* The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the deleted key.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture recoverDeletedKeyAsync(String vaultBaseUrl, String keyName, final ServiceCallback serviceCallback);
/**
* Recovers the deleted key to its latest version.
* The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the deleted key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable recoverDeletedKeyAsync(String vaultBaseUrl, String keyName);
/**
* Recovers the deleted key to its latest version.
* The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param keyName The name of the deleted key.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the KeyBundle object
*/
Observable> recoverDeletedKeyWithServiceResponseAsync(String vaultBaseUrl, String keyName);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle setSecret(String vaultBaseUrl, String secretName, String value);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture setSecretAsync(String vaultBaseUrl, String secretName, String value, final ServiceCallback serviceCallback);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable setSecretAsync(String vaultBaseUrl, String secretName, String value);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> setSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName, String value);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @param tags Application specific metadata in the form of key-value pairs.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle setSecret(String vaultBaseUrl, String secretName, String value, Map tags, String contentType, SecretAttributes secretAttributes);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @param tags Application specific metadata in the form of key-value pairs.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture setSecretAsync(String vaultBaseUrl, String secretName, String value, Map tags, String contentType, SecretAttributes secretAttributes, final ServiceCallback serviceCallback);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @param tags Application specific metadata in the form of key-value pairs.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable setSecretAsync(String vaultBaseUrl, String secretName, String value, Map tags, String contentType, SecretAttributes secretAttributes);
/**
* Sets a secret in a specified key vault.
* The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param value The value of the secret.
* @param tags Application specific metadata in the form of key-value pairs.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> setSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName, String value, Map tags, String contentType, SecretAttributes secretAttributes);
/**
* Deletes a secret from a specified key vault.
* The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the DeletedSecretBundle object if successful.
*/
DeletedSecretBundle deleteSecret(String vaultBaseUrl, String secretName);
/**
* Deletes a secret from a specified key vault.
* The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture deleteSecretAsync(String vaultBaseUrl, String secretName, final ServiceCallback serviceCallback);
/**
* Deletes a secret from a specified key vault.
* The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedSecretBundle object
*/
Observable deleteSecretAsync(String vaultBaseUrl, String secretName);
/**
* Deletes a secret from a specified key vault.
* The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedSecretBundle object
*/
Observable> deleteSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle updateSecret(String vaultBaseUrl, String secretName, String secretVersion);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture updateSecretAsync(String vaultBaseUrl, String secretName, String secretVersion, final ServiceCallback serviceCallback);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable updateSecretAsync(String vaultBaseUrl, String secretName, String secretVersion);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> updateSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName, String secretVersion);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle updateSecret(String vaultBaseUrl, String secretName, String secretVersion, String contentType, SecretAttributes secretAttributes, Map tags);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture updateSecretAsync(String vaultBaseUrl, String secretName, String secretVersion, String contentType, SecretAttributes secretAttributes, Map tags, final ServiceCallback serviceCallback);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable updateSecretAsync(String vaultBaseUrl, String secretName, String secretVersion, String contentType, SecretAttributes secretAttributes, Map tags);
/**
* Updates the attributes associated with a specified secret in a given key vault.
* The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param contentType Type of the secret value such as a password.
* @param secretAttributes The secret management attributes.
* @param tags Application specific metadata in the form of key-value pairs.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> updateSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName, String secretVersion, String contentType, SecretAttributes secretAttributes, Map tags);
/**
* Get a specified secret from a given key vault.
* The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle getSecret(String vaultBaseUrl, String secretName, String secretVersion);
/**
* Get a specified secret from a given key vault.
* The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture getSecretAsync(String vaultBaseUrl, String secretName, String secretVersion, final ServiceCallback serviceCallback);
/**
* Get a specified secret from a given key vault.
* The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable getSecretAsync(String vaultBaseUrl, String secretName, String secretVersion);
/**
* Get a specified secret from a given key vault.
* The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param secretVersion The version of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> getSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName, String secretVersion);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<SecretItem> object if successful.
*/
PagedList getSecrets(final String vaultBaseUrl);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getSecretsAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable> getSecretsAsync(final String vaultBaseUrl);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable>> getSecretsWithServiceResponseAsync(final String vaultBaseUrl);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<SecretItem> object if successful.
*/
PagedList getSecrets(final String vaultBaseUrl, final Integer maxresults);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getSecretsAsync(final String vaultBaseUrl, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable> getSecretsAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* List secrets in a specified key vault.
* The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable>> getSecretsWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<SecretItem> object if successful.
*/
PagedList getSecretVersions(final String vaultBaseUrl, final String secretName);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getSecretVersionsAsync(final String vaultBaseUrl, final String secretName, final ListOperationCallback serviceCallback);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable> getSecretVersionsAsync(final String vaultBaseUrl, final String secretName);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable>> getSecretVersionsWithServiceResponseAsync(final String vaultBaseUrl, final String secretName);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<SecretItem> object if successful.
*/
PagedList getSecretVersions(final String vaultBaseUrl, final String secretName, final Integer maxresults);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getSecretVersionsAsync(final String vaultBaseUrl, final String secretName, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable> getSecretVersionsAsync(final String vaultBaseUrl, final String secretName, final Integer maxresults);
/**
* List all versions of the specified secret.
* The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param maxresults Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<SecretItem> object
*/
Observable>> getSecretVersionsWithServiceResponseAsync(final String vaultBaseUrl, final String secretName, final Integer maxresults);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<DeletedSecretItem> object if successful.
*/
PagedList getDeletedSecrets(final String vaultBaseUrl);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getDeletedSecretsAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedSecretItem> object
*/
Observable> getDeletedSecretsAsync(final String vaultBaseUrl);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedSecretItem> object
*/
Observable>> getDeletedSecretsWithServiceResponseAsync(final String vaultBaseUrl);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<DeletedSecretItem> object if successful.
*/
PagedList getDeletedSecrets(final String vaultBaseUrl, final Integer maxresults);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getDeletedSecretsAsync(final String vaultBaseUrl, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedSecretItem> object
*/
Observable> getDeletedSecretsAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Lists deleted secrets for the specified vault.
* The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<DeletedSecretItem> object
*/
Observable>> getDeletedSecretsWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Gets the specified deleted secret.
* The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the DeletedSecretBundle object if successful.
*/
DeletedSecretBundle getDeletedSecret(String vaultBaseUrl, String secretName);
/**
* Gets the specified deleted secret.
* The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture getDeletedSecretAsync(String vaultBaseUrl, String secretName, final ServiceCallback serviceCallback);
/**
* Gets the specified deleted secret.
* The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedSecretBundle object
*/
Observable getDeletedSecretAsync(String vaultBaseUrl, String secretName);
/**
* Gets the specified deleted secret.
* The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedSecretBundle object
*/
Observable> getDeletedSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName);
/**
* Permanently deletes the specified secret.
* The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
*/
void purgeDeletedSecret(String vaultBaseUrl, String secretName);
/**
* Permanently deletes the specified secret.
* The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture purgeDeletedSecretAsync(String vaultBaseUrl, String secretName, final ServiceCallback serviceCallback);
/**
* Permanently deletes the specified secret.
* The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
Observable purgeDeletedSecretAsync(String vaultBaseUrl, String secretName);
/**
* Permanently deletes the specified secret.
* The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceResponse} object if successful.
*/
Observable> purgeDeletedSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName);
/**
* Recovers the deleted secret to the latest version.
* Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the deleted secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle recoverDeletedSecret(String vaultBaseUrl, String secretName);
/**
* Recovers the deleted secret to the latest version.
* Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the deleted secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture recoverDeletedSecretAsync(String vaultBaseUrl, String secretName, final ServiceCallback serviceCallback);
/**
* Recovers the deleted secret to the latest version.
* Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the deleted secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable recoverDeletedSecretAsync(String vaultBaseUrl, String secretName);
/**
* Recovers the deleted secret to the latest version.
* Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the deleted secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> recoverDeletedSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName);
/**
* Backs up the specified secret.
* Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the BackupSecretResult object if successful.
*/
BackupSecretResult backupSecret(String vaultBaseUrl, String secretName);
/**
* Backs up the specified secret.
* Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture backupSecretAsync(String vaultBaseUrl, String secretName, final ServiceCallback serviceCallback);
/**
* Backs up the specified secret.
* Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BackupSecretResult object
*/
Observable backupSecretAsync(String vaultBaseUrl, String secretName);
/**
* Backs up the specified secret.
* Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretName The name of the secret.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the BackupSecretResult object
*/
Observable> backupSecretWithServiceResponseAsync(String vaultBaseUrl, String secretName);
/**
* Restores a backed up secret to a vault.
* Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretBundleBackup The backup blob associated with a secret bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the SecretBundle object if successful.
*/
SecretBundle restoreSecret(String vaultBaseUrl, byte[] secretBundleBackup);
/**
* Restores a backed up secret to a vault.
* Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretBundleBackup The backup blob associated with a secret bundle.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture restoreSecretAsync(String vaultBaseUrl, byte[] secretBundleBackup, final ServiceCallback serviceCallback);
/**
* Restores a backed up secret to a vault.
* Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretBundleBackup The backup blob associated with a secret bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable restoreSecretAsync(String vaultBaseUrl, byte[] secretBundleBackup);
/**
* Restores a backed up secret to a vault.
* Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param secretBundleBackup The backup blob associated with a secret bundle.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the SecretBundle object
*/
Observable> restoreSecretWithServiceResponseAsync(String vaultBaseUrl, byte[] secretBundleBackup);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<CertificateItem> object if successful.
*/
PagedList getCertificates(final String vaultBaseUrl);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getCertificatesAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateItem> object
*/
Observable> getCertificatesAsync(final String vaultBaseUrl);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateItem> object
*/
Observable>> getCertificatesWithServiceResponseAsync(final String vaultBaseUrl);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param includePending Specifies whether to include certificates which are not completely provisioned.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<CertificateItem> object if successful.
*/
PagedList getCertificates(final String vaultBaseUrl, final Integer maxresults, final Boolean includePending);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param includePending Specifies whether to include certificates which are not completely provisioned.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getCertificatesAsync(final String vaultBaseUrl, final Integer maxresults, final Boolean includePending, final ListOperationCallback serviceCallback);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param includePending Specifies whether to include certificates which are not completely provisioned.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateItem> object
*/
Observable> getCertificatesAsync(final String vaultBaseUrl, final Integer maxresults, final Boolean includePending);
/**
* List certificates in a specified key vault.
* The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param includePending Specifies whether to include certificates which are not completely provisioned.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateItem> object
*/
Observable>> getCertificatesWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults, final Boolean includePending);
/**
* Deletes a certificate from a specified key vault.
* Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param certificateName The name of the certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the DeletedCertificateBundle object if successful.
*/
DeletedCertificateBundle deleteCertificate(String vaultBaseUrl, String certificateName);
/**
* Deletes a certificate from a specified key vault.
* Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param certificateName The name of the certificate.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture deleteCertificateAsync(String vaultBaseUrl, String certificateName, final ServiceCallback serviceCallback);
/**
* Deletes a certificate from a specified key vault.
* Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param certificateName The name of the certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedCertificateBundle object
*/
Observable deleteCertificateAsync(String vaultBaseUrl, String certificateName);
/**
* Deletes a certificate from a specified key vault.
* Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param certificateName The name of the certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the DeletedCertificateBundle object
*/
Observable> deleteCertificateWithServiceResponseAsync(String vaultBaseUrl, String certificateName);
/**
* Sets the certificate contacts for the specified key vault.
* Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param contacts The contacts for the key vault certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the Contacts object if successful.
*/
Contacts setCertificateContacts(String vaultBaseUrl, Contacts contacts);
/**
* Sets the certificate contacts for the specified key vault.
* Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param contacts The contacts for the key vault certificate.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture setCertificateContactsAsync(String vaultBaseUrl, Contacts contacts, final ServiceCallback serviceCallback);
/**
* Sets the certificate contacts for the specified key vault.
* Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param contacts The contacts for the key vault certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable setCertificateContactsAsync(String vaultBaseUrl, Contacts contacts);
/**
* Sets the certificate contacts for the specified key vault.
* Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param contacts The contacts for the key vault certificate.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable> setCertificateContactsWithServiceResponseAsync(String vaultBaseUrl, Contacts contacts);
/**
* Lists the certificate contacts for a specified key vault.
* The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the Contacts object if successful.
*/
Contacts getCertificateContacts(String vaultBaseUrl);
/**
* Lists the certificate contacts for a specified key vault.
* The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture getCertificateContactsAsync(String vaultBaseUrl, final ServiceCallback serviceCallback);
/**
* Lists the certificate contacts for a specified key vault.
* The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable getCertificateContactsAsync(String vaultBaseUrl);
/**
* Lists the certificate contacts for a specified key vault.
* The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable> getCertificateContactsWithServiceResponseAsync(String vaultBaseUrl);
/**
* Deletes the certificate contacts for a specified key vault.
* Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the Contacts object if successful.
*/
Contacts deleteCertificateContacts(String vaultBaseUrl);
/**
* Deletes the certificate contacts for a specified key vault.
* Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture deleteCertificateContactsAsync(String vaultBaseUrl, final ServiceCallback serviceCallback);
/**
* Deletes the certificate contacts for a specified key vault.
* Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable deleteCertificateContactsAsync(String vaultBaseUrl);
/**
* Deletes the certificate contacts for a specified key vault.
* Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the Contacts object
*/
Observable> deleteCertificateContactsWithServiceResponseAsync(String vaultBaseUrl);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<CertificateIssuerItem> object if successful.
*/
PagedList getCertificateIssuers(final String vaultBaseUrl);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getCertificateIssuersAsync(final String vaultBaseUrl, final ListOperationCallback serviceCallback);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateIssuerItem> object
*/
Observable> getCertificateIssuersAsync(final String vaultBaseUrl);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateIssuerItem> object
*/
Observable>> getCertificateIssuersWithServiceResponseAsync(final String vaultBaseUrl);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the PagedList<CertificateIssuerItem> object if successful.
*/
PagedList getCertificateIssuers(final String vaultBaseUrl, final Integer maxresults);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture> getCertificateIssuersAsync(final String vaultBaseUrl, final Integer maxresults, final ListOperationCallback serviceCallback);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateIssuerItem> object
*/
Observable> getCertificateIssuersAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* List certificate issuers for a specified key vault.
* The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param maxresults Maximum number of results to return in a page. If not specified the service will return up to 25 results.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the PagedList<CertificateIssuerItem> object
*/
Observable>> getCertificateIssuersWithServiceResponseAsync(final String vaultBaseUrl, final Integer maxresults);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the IssuerBundle object if successful.
*/
IssuerBundle setCertificateIssuer(String vaultBaseUrl, String issuerName, String provider);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture setCertificateIssuerAsync(String vaultBaseUrl, String issuerName, String provider, final ServiceCallback serviceCallback);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the IssuerBundle object
*/
Observable setCertificateIssuerAsync(String vaultBaseUrl, String issuerName, String provider);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the IssuerBundle object
*/
Observable> setCertificateIssuerWithServiceResponseAsync(String vaultBaseUrl, String issuerName, String provider);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @param credentials The credentials to be used for the issuer.
* @param organizationDetails Details of the organization as provided to the issuer.
* @param attributes Attributes of the issuer object.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @throws KeyVaultErrorException thrown if the request is rejected by server
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
* @return the IssuerBundle object if successful.
*/
IssuerBundle setCertificateIssuer(String vaultBaseUrl, String issuerName, String provider, IssuerCredentials credentials, OrganizationDetails organizationDetails, IssuerAttributes attributes);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @param credentials The credentials to be used for the issuer.
* @param organizationDetails Details of the organization as provided to the issuer.
* @param attributes Attributes of the issuer object.
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the {@link ServiceFuture} object
*/
ServiceFuture setCertificateIssuerAsync(String vaultBaseUrl, String issuerName, String provider, IssuerCredentials credentials, OrganizationDetails organizationDetails, IssuerAttributes attributes, final ServiceCallback serviceCallback);
/**
* Sets the specified certificate issuer.
* The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.
*
* @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
* @param issuerName The name of the issuer.
* @param provider The issuer provider.
* @param credentials The credentials to be used for the issuer.
* @param organizationDetails Details of the organization as provided to the issuer.
* @param attributes Attributes of the issuer object.
* @throws IllegalArgumentException thrown if parameters fail the validation
* @return the observable to the IssuerBundle object
*/
Observable