Deletes the certificate in the Azure Key Vault. Prints out the deleted certificate details when a response has been received.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.deleteCertificate#string}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.begindeleteCertificate#string}
*
* @param name The name of the certificate to be deleted.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
* @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Mono} containing the {@link DeletedCertificate deleted certificate}.
+ * @return A {@link PollerFlux} to poll on the {@link DeletedCertificate deleted certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Mono deleteCertificate(String name) {
- try {
- return withContext(context -> deleteCertificateWithResponse(name, context)).flatMap(FluxUtil::toMono);
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
+ public PollerFlux beginDeleteCertificate(String name) {
+ return new PollerFlux<>(Duration.ofSeconds(1),
+ activationOperation(name),
+ createDeletePollOperation(name),
+ (context, firstResponse) -> Mono.empty(),
+ (context) -> Mono.empty());
}
- /**
- * Deletes a certificate from a specified key vault. All the versions of the certificate along with its associated policy
- * get deleted. If soft-delete is enabled on the key vault then the certificate is placed in the deleted state and requires to be
- * purged for permanent deletion else the certificate is permanently deleted. The delete operation applies to any certificate stored in
- * Azure Key Vault but it cannot be applied to an individual version of a certificate. This operation requires the certificates/delete permission.
- *
- *
Code Samples
- *
Deletes the certificate in the Azure Key Vault. Prints out the deleted certificate details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.deleteCertificateWithResponse#string}
- *
- * @param name The name of the certificate to be deleted.
- * @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the {@link DeletedCertificate deleted certificate}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> deleteCertificateWithResponse(String name) {
- try {
- return withContext(context -> deleteCertificateWithResponse(name, context));
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
+ private Function, Mono> activationOperation(String name) {
+ return (pollingContext) -> withContext(context -> deleteCertificateWithResponse(name, context)
+ .flatMap(deletedKeyResponse -> Mono.just(deletedKeyResponse.getValue())));
+ }
+
+ /*
+ Polling operation to poll on create delete key operation status.
+ */
+ private Function, Mono>> createDeletePollOperation(String keyName) {
+ return pollingContext ->
+ withContext(context -> service.getDeletedCertificatePoller(vaultUrl, keyName, API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
+ .flatMap(deletedKeyResponse -> {
+ if (deletedKeyResponse.getStatusCode() == HttpURLConnection.HTTP_NOT_FOUND) {
+ return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.IN_PROGRESS,
+ pollingContext.getLatestResponse().getValue())));
+ }
+ return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, deletedKeyResponse.getValue())));
+ }))
+ // This means either vault has soft-delete disabled or permission is not granted for the get deleted key operation.
+ // In both cases deletion operation was successful when activation operation succeeded before reaching here.
+ .onErrorReturn(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, pollingContext.getLatestResponse().getValue()));
}
Mono> deleteCertificateWithResponse(String name, Context context) {
@@ -582,45 +581,45 @@ Mono> purgeDeletedCertificateWithResponse(String name, Context co
*
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
* recovered certificate details when a response has been received.
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateAsyncClient.recoverDeletedCertificate#string}
+ * {@codesnippet com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginrecoverDeletedCertificate#string}
*
* @param name The name of the deleted certificate to be recovered.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
* @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Mono} containing the {@link KeyVaultCertificate recovered certificate}.
+ * @return A {@link PollerFlux} to poll on the {@link KeyVaultCertificate recovered certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Mono recoverDeletedCertificate(String name) {
- try {
- return withContext(context -> recoverDeletedCertificateWithResponse(name, context)).flatMap(FluxUtil::toMono);
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
+ public PollerFlux beginRecoverDeletedCertificate(String name) {
+ return new PollerFlux<>(Duration.ofSeconds(1),
+ recoverActivationOperation(name),
+ createRecoverPollOperation(name),
+ (context, firstResponse) -> Mono.empty(),
+ context -> Mono.empty());
}
- /**
- * Recovers the deleted certificate back to its current version under /certificates and can only be performed on a soft-delete enabled vault.
- * The RecoverDeletedCertificate operation performs the reversal of the Delete operation and must be issued during the retention interval
- * (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.
- *
- *
Code Samples
- *
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
- * recovered certificate details when a response has been received.
+ private Function, Mono> recoverActivationOperation(String name) {
+ return (pollingContext) -> withContext(context -> recoverDeletedCertificateWithResponse(name, context)
+ .flatMap(keyResponse -> Mono.just(keyResponse.getValue())));
+ }
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateAsyncClient.recoverDeletedCertificateWithResponse#string}
- *
- * @param name The name of the deleted certificate to be recovered.
- * @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
- * @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate recovered certificate}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> recoverDeletedCertificateWithResponse(String name) {
- try {
- return withContext(context -> recoverDeletedCertificateWithResponse(name, context));
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
+ /*
+ Polling operation to poll on create delete key operation status.
+ */
+ private Function, Mono>> createRecoverPollOperation(String keyName) {
+ return pollingContext ->
+ withContext(context -> service.getCertificatePoller(vaultUrl, keyName, "", API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
+ .flatMap(keyResponse -> {
+ if (keyResponse.getStatusCode() == 404) {
+ return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.IN_PROGRESS,
+ pollingContext.getLatestResponse().getValue())));
+ }
+ return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED,
+ keyResponse.getValue())));
+ }))
+ // This means permission is not granted for the get deleted key operation.
+ // In both cases deletion operation was successful when activation operation succeeded before reaching here.
+ .onErrorReturn(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED,
+ pollingContext.getLatestResponse().getValue()));
}
Mono> recoverDeletedCertificateWithResponse(String name, Context context) {
@@ -1177,7 +1176,7 @@ Mono> updateCertificatePolicyWithResponse(String cer
CertificatePolicyRequest policyRequest = new CertificatePolicyRequest(policy);
return service.updateCertificatePolicy(vaultUrl, API_VERSION, ACCEPT_LANGUAGE, certificateName, policyRequest, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Updating certificate policy - {}", certificateName))
- .doOnSuccess(response -> logger.info("Updated the certificate policy - {}", response.getValue().getUpdated()))
+ .doOnSuccess(response -> logger.info("Updated the certificate policy - {}", response.getValue().getUpdatedOn()))
.doOnError(error -> logger.warning("Failed to update the certificate policy - {}", certificateName, error));
}
@@ -1267,7 +1266,7 @@ Mono> createIssuerWithResponse(CertificateIssuer iss
CertificateIssuerSetParameters parameters = new CertificateIssuerSetParameters()
.provider(issuer.getProperties().getProvider())
.credentials(new IssuerCredentials().accountId(issuer.getAccountId()).password(issuer.getPassword()))
- .organizationDetails(new OrganizationDetails().adminDetails(issuer.getAdministrators()))
+ .organizationDetails(new OrganizationDetails().adminDetails(issuer.getAdministratorContacts()))
.credentials(new IssuerCredentials().password(issuer.getPassword()).accountId(issuer.getAccountId()));
return service.setCertificateIssuer(vaultUrl, API_VERSION, ACCEPT_LANGUAGE, issuer.getName(), parameters, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Creating certificate issuer - {}", issuer.getName()))
@@ -1333,7 +1332,7 @@ Mono> getIssuerWithResponse(String name, Context con
* Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
* requires the certificates/manageissuers/getissuers permission.
*
- *
The list operations {@link CertificateAsyncClient#listIssuers()} return the {@link PagedFlux} containing
+ *
The list operations {@link CertificateAsyncClient#listPropertiesOfIssuers()} return the {@link PagedFlux} containing
* {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
* This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
*
@@ -1357,7 +1356,7 @@ public Mono getIssuer(IssuerProperties issuerProperties) {
* Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
* requires the certificates/manageissuers/getissuers permission.
*
- *
The list operations {@link CertificateAsyncClient#listIssuers()} return the {@link PagedFlux} containing
+ *
The list operations {@link CertificateAsyncClient#listPropertiesOfIssuers()} return the {@link PagedFlux} containing
* {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
* This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
*
@@ -1447,23 +1446,23 @@ Mono> deleteIssuerWithResponse(String name, Context
* @return A {@link PagedFlux} containing all of the {@link IssuerProperties certificate issuers} in the vault.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedFlux listIssuers() {
+ public PagedFlux listPropertiesOfIssuers() {
try {
return new PagedFlux<>(
- () -> withContext(context -> listCertificateIssuersFirstPage(context)),
- continuationToken -> withContext(context -> listCertificateIssuersNextPage(continuationToken, context)));
+ () -> withContext(context -> listPropertiesOfIssuersFirstPage(context)),
+ continuationToken -> withContext(context -> listPropertiesOfIssuersNextPage(continuationToken, context)));
} catch (RuntimeException ex) {
return new PagedFlux<>(() -> monoError(logger, ex));
}
}
- PagedFlux listIssuers(Context context) {
+ PagedFlux listPropertiesOfIssuers(Context context) {
return new PagedFlux<>(
- () -> listCertificateIssuersFirstPage(context),
- continuationToken -> listCertificateIssuersNextPage(continuationToken, context));
+ () -> listPropertiesOfIssuersFirstPage(context),
+ continuationToken -> listPropertiesOfIssuersNextPage(continuationToken, context));
}
- private Mono> listCertificateIssuersFirstPage(Context context) {
+ private Mono> listPropertiesOfIssuersFirstPage(Context context) {
try {
return service.getCertificateIssuers(vaultUrl, DEFAULT_MAX_PAGE_RESULTS, API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Listing certificate issuers - {}"))
@@ -1481,7 +1480,7 @@ private Mono> listCertificateIssuersFirstPage(Co
* @param continuationToken The {@link PagedResponse#nextLink()} from a previous, successful call to one of the listKeys operations.
* @return A {@link Mono} of {@link PagedResponse} from the next page of results.
*/
- private Mono> listCertificateIssuersNextPage(String continuationToken, Context context) {
+ private Mono> listPropertiesOfIssuersNextPage(String continuationToken, Context context) {
try {
return service.getCertificateIssuers(vaultUrl, continuationToken, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Listing next certificate issuers page - Page {} ", continuationToken))
@@ -1544,7 +1543,7 @@ public Mono> updateIssuerWithResponse(CertificateIss
Mono> updateIssuerWithResponse(CertificateIssuer issuer, Context context) {
CertificateIssuerUpdateParameters updateParameters = new CertificateIssuerUpdateParameters()
.provider(issuer.getProperties().getProvider())
- .organizationDetails(new OrganizationDetails().adminDetails(issuer.getAdministrators()))
+ .organizationDetails(new OrganizationDetails().adminDetails(issuer.getAdministratorContacts()))
.credentials(new IssuerCredentials().password(issuer.getPassword()).accountId(issuer.getAccountId()));
return service.updateCertificateIssuer(vaultUrl, issuer.getName(), API_VERSION, ACCEPT_LANGUAGE, updateParameters, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Updating certificate issuer - {}", issuer.getName()))
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index 15950b78bfca..36112fe5f0ca 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -262,39 +262,16 @@ public Response updateCertificatePropertiesWithResponse(Cer
*
Deletes the certificate in the Azure Key Vault. Prints out the
* deleted certificate details when a response has been received.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.deleteCertificate#string}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.begindeleteCertificate#string}
*
* @param name The name of the certificate to be deleted.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
* @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return The {@link DeletedCertificate deleted certificate}.
+ * @return A {@link SyncPoller} to poll on and retrieve {@link DeletedCertificate deleted certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public DeletedCertificate deleteCertificate(String name) {
- return deleteCertificateWithResponse(name, Context.NONE).getValue();
- }
-
- /**
- * Deletes a certificate from a specified key vault. All the versions of the certificate along with its associated policy
- * get deleted. If soft-delete is enabled on the key vault then the certificate is placed in the deleted state and requires to be
- * purged for permanent deletion else the certificate is permanently deleted. The delete operation applies to any certificate stored in
- * Azure Key Vault but it cannot be applied to an individual version of a certificate. This operation requires the certificates/delete permission.
- *
- *
Code Samples
- *
Deletes the certificate in the Azure Key Vault. Prints out the
- * deleted certificate details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.deleteCertificateWithResponse#String-Context}
- *
- * @param name The name of the certificate to be deleted.
- * @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Response} whose {@link Response#getValue() value} contains the {@link DeletedCertificate deleted certificate}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response deleteCertificateWithResponse(String name, Context context) {
- return client.deleteCertificateWithResponse(name, context).block();
+ public SyncPoller beginDeleteCertificate(String name) {
+ return client.beginDeleteCertificate(name).getSyncPoller();
}
/**
@@ -389,38 +366,16 @@ public Response purgeDeletedCertificateWithResponse(String name, Context c
*
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
* recovered certificate details when a response has been received.
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateClient.recoverDeletedCertificate#string}
+ * {@codesnippet com.azure.security.certificatevault.certificates.CertificateClient.beginrecoverDeletedCertificate#string}
*
* @param name The name of the deleted certificate to be recovered.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
* @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return The {@link KeyVaultCertificate recovered certificate}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public KeyVaultCertificate recoverDeletedCertificate(String name) {
- return recoverDeletedCertificateWithResponse(name, Context.NONE).getValue();
- }
-
- /**
- * Recovers the deleted certificate back to its current version under /certificates and can only be performed on a soft-delete enabled vault.
- * The RecoverDeletedCertificate operation performs the reversal of the Delete operation and must be issued during the retention interval
- * (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.
- *
- *
Code Samples
- *
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
- * recovered certificate details when a response has been received.
-
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateClient.recoverDeletedCertificateWithResponse#String-Context}
- *
- * @param name The name of the deleted certificate to be recovered.
- * @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
- * @throws HttpRequestException when a certificate with {@code name} is empty string.
- * @return A {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate recovered certificate}.
+ * @return A {@link SyncPoller} to poll on and retrieve {@link KeyVaultCertificate recovered certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Response recoverDeletedCertificateWithResponse(String name, Context context) {
- return client.recoverDeletedCertificateWithResponse(name, context).block();
+ public SyncPoller beginRecoverDeletedCertificate(String name) {
+ return client.beginRecoverDeletedCertificate(name).getSyncPoller();
}
/**
@@ -812,7 +767,7 @@ public CertificateIssuer getIssuer(String name) {
* Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
* requires the certificates/manageissuers/getissuers permission.
*
- *
The list operations {@link CertificateClient#listIssuers()} return the {@link PagedIterable} containing
+ *
The list operations {@link CertificateClient#listPropertiesOfIssuers()} return the {@link PagedIterable} containing
* {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
* This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
*
@@ -832,7 +787,7 @@ public CertificateIssuer getIssuer(IssuerProperties issuerProperties) {
* Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
* requires the certificates/manageissuers/getissuers permission.
*
- *
The list operations {@link CertificateClient#listIssuers()} return the {@link PagedIterable} containing
+ *
The list operations {@link CertificateClient#listPropertiesOfIssuers()} return the {@link PagedIterable} containing
* {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
* This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
*
@@ -904,8 +859,8 @@ public CertificateIssuer deleteIssuer(String name) {
* @return A {@link PagedIterable} containing all of the {@link IssuerProperties certificate issuers} in the vault.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable listIssuers() {
- return listIssuers(Context.NONE);
+ public PagedIterable listPropertiesOfIssuers() {
+ return listPropertiesOfIssuers(Context.NONE);
}
/**
@@ -923,8 +878,8 @@ public PagedIterable listIssuers() {
* @return A {@link PagedIterable} containing all of the {@link IssuerProperties certificate issuers} in the vault.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable listIssuers(Context context) {
- return new PagedIterable<>(client.listIssuers(context));
+ public PagedIterable listPropertiesOfIssuers(Context context) {
+ return new PagedIterable<>(client.listPropertiesOfIssuers(context));
}
/**
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
index bb0295beed40..c92e848a9cb0 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
@@ -25,8 +25,8 @@ class CertificateRequestAttributes {
if (certificateProperties.getNotBefore() != null) {
this.notBefore = certificateProperties.getNotBefore().toEpochSecond();
}
- if (certificateProperties.getExpires() != null) {
- this.expires = certificateProperties.getExpires().toEpochSecond();
+ if (certificateProperties.getExpiresOn() != null) {
+ this.expires = certificateProperties.getExpiresOn().toEpochSecond();
}
this.enabled = certificateProperties.isEnabled();
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
index a4accb6b7753..2cc4c625927d 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
@@ -107,6 +107,18 @@ Mono> getCertificate(@HostParam("url") String url,
@HeaderParam("Content-Type") String type,
Context context);
+ @Get("certificates/{certificate-name}/{certificate-version}")
+ @ExpectedResponses({200, 404})
+ @UnexpectedResponseExceptionType(code = {403}, value = ResourceModifiedException.class)
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getCertificatePoller(@HostParam("url") String url,
+ @PathParam("certificate-name") String certificateName,
+ @PathParam("certificate-version") String certificateVersion,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("accept-language") String acceptLanguage,
+ @HeaderParam("Content-Type") String type,
+ Context context);
+
@Get("certificates/{certificate-name}/{certificate-version}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(code = {404}, value = ResourceNotFoundException.class)
@@ -181,6 +193,16 @@ Mono> getDeletedCertificate(@HostParam("url") Strin
@HeaderParam("Content-Type") String type,
Context context);
+ @Get("deletedcertificates/{certificate-name}")
+ @ExpectedResponses({200, 404})
+ @UnexpectedResponseExceptionType(HttpResponseException.class)
+ Mono> getDeletedCertificatePoller(@HostParam("url") String url,
+ @PathParam("certificate-name") String certificateName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("accept-language") String acceptLanguage,
+ @HeaderParam("Content-Type") String type,
+ Context context);
+
@Delete("deletedcertificates/{certificate-name}")
@ExpectedResponses({204})
@UnexpectedResponseExceptionType(code = {404}, value = ResourceNotFoundException.class)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/OrganizationDetails.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/OrganizationDetails.java
index 1233408f1380..8a35d867f3e1 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/OrganizationDetails.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/OrganizationDetails.java
@@ -4,7 +4,7 @@
package com.azure.security.keyvault.certificates;
-import com.azure.security.keyvault.certificates.models.Administrator;
+import com.azure.security.keyvault.certificates.models.AdministratorContact;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
@@ -23,7 +23,7 @@ class OrganizationDetails {
* Details of the organization administrator.
*/
@JsonProperty(value = "admin_details")
- private List adminDetails;
+ private List adminDetails;
/**
* Get the id value.
@@ -50,7 +50,7 @@ OrganizationDetails id(String id) {
*
* @return the adminDetails value
*/
- List adminDetails() {
+ List adminDetails() {
return this.adminDetails;
}
@@ -60,7 +60,7 @@ List adminDetails() {
* @param adminDetails the adminDetails value to set
* @return the OrganizationDetails object itself.
*/
- OrganizationDetails adminDetails(List adminDetails) {
+ OrganizationDetails adminDetails(List adminDetails) {
this.adminDetails = adminDetails;
return this;
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/Administrator.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
similarity index 90%
rename from sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/Administrator.java
rename to sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
index 70d18fe71596..735f95c320d4 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/Administrator.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
@@ -8,7 +8,7 @@
/**
* Represents an administrator in {@link CertificateIssuer}
*/
-public final class Administrator {
+public final class AdministratorContact {
/**
* First name.
*/
@@ -39,7 +39,7 @@ public final class Administrator {
* @param lastName the last name of the issuer.
* @param email the email of the issuer.
*/
- public Administrator(String firstName, String lastName, String email) {
+ public AdministratorContact(String firstName, String lastName, String email) {
this.firstName = firstName;
this.lastName = lastName;
this.email = email;
@@ -52,7 +52,7 @@ public Administrator(String firstName, String lastName, String email) {
* @param email the email of the admin.
* @param contact tne contact info of the admin.
*/
- public Administrator(String firstName, String lastName, String email, String contact) {
+ public AdministratorContact(String firstName, String lastName, String email, String contact) {
this.firstName = firstName;
this.lastName = lastName;
this.email = email;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
index 74b06a9a5c1a..fda9e0840402 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
@@ -35,7 +35,7 @@ public final class CertificateIssuer {
/**
* The administrators.
*/
- private List administrators;
+ private List administratorContacts;
/**
* The Issuer properties
@@ -154,17 +154,17 @@ public CertificateIssuer setOrganizationId(String organizationId) {
* Get the administrators of the isssuer.
* @return the administrators
*/
- public List getAdministrators() {
- return administrators;
+ public List getAdministratorContacts() {
+ return administratorContacts;
}
/**
* Set the administrators of the isssuer.
- * @param administrators the administrators to set.
+ * @param administratorContacts the administrators to set.
* @return the Issuer object itself.
*/
- public CertificateIssuer setAdministrators(List administrators) {
- this.administrators = administrators;
+ public CertificateIssuer setAdministratorContacts(List administratorContacts) {
+ this.administratorContacts = administratorContacts;
return this;
}
@@ -211,13 +211,13 @@ private void unpackCredentials(Map credentials) {
@JsonProperty(value = "org_details")
@SuppressWarnings("unchecked")
private void unpacOrganizationalDetails(Map orgDetails) {
- this.administrators = orgDetails.containsKey("admin_details") ? parseAdministrators((List
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificates}
*
@@ -771,7 +767,7 @@ public PagedFlux listPropertiesOfCertificates(Boolean inc
* the response. This operation requires the certificates/list permission.
*
*
It is possible to get certificates with all the properties excluding the policy from this information. Convert the {@link Flux} containing {@link CertificateProperties} to
- * {@link Flux} containing {@link KeyVaultCertificate certificate} using {@link CertificateAsyncClient#getCertificate(CertificateProperties certificateProperties)} within {@link Flux#flatMap(Function)}.
+ * {@link Flux} containing {@link KeyVaultCertificate certificate} using {@link CertificateAsyncClient#getCertificateVersion(String, String)} within {@link Flux#flatMap(Function)}.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificates}
*
@@ -845,7 +841,7 @@ private Mono> listCertificatesFirstPage(Boo
public PagedFlux listDeletedCertificates() {
try {
return new PagedFlux<>(
- () -> withContext(context -> listDeletedCertificatesFirstPage(context)),
+ () -> withContext(context -> listDeletedCertificatesFirstPage(false, context)),
continuationToken -> withContext(
context -> listDeletedCertificatesNextPage(continuationToken, context)));
} catch (RuntimeException ex) {
@@ -853,9 +849,35 @@ public PagedFlux listDeletedCertificates() {
}
}
- PagedFlux listDeletedCertificates(Context context) {
+ /**
+ * Lists the {@link DeletedCertificate deleted certificates} in the key vault currently available for recovery. This
+ * operation includes deletion-specific information and is applicable for vaults enabled for soft-delete. This
+ * operation requires the {@code certificates/get/list} permission.
+ *
+ *
Code Samples
+ *
Lists the deleted certificates in the key vault. Prints out the
+ * recovery id of each deleted certificate when a response has been received.
+ *
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.listDeletedCertificates}
+ *
+ * @param includePending indicate if pending deleted certificates should be included in the results.
+ * @return A {@link PagedFlux} containing all of the {@link DeletedCertificate deleted certificates} in the vault.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedFlux listDeletedCertificates(Boolean includePending) {
+ try {
+ return new PagedFlux<>(
+ () -> withContext(context -> listDeletedCertificatesFirstPage(includePending, context)),
+ continuationToken -> withContext(
+ context -> listDeletedCertificatesNextPage(continuationToken, context)));
+ } catch (RuntimeException ex) {
+ return new PagedFlux<>(() -> monoError(logger, ex));
+ }
+ }
+
+ PagedFlux listDeletedCertificates(Boolean includePending, Context context) {
return new PagedFlux<>(
- () -> listDeletedCertificatesFirstPage(context),
+ () -> listDeletedCertificatesFirstPage(includePending, context),
continuationToken -> listDeletedCertificatesNextPage(continuationToken, context));
}
@@ -884,9 +906,9 @@ private Mono> listDeletedCertificatesNextPage(
/*
* Calls the service and retrieve first page result. It makes one call and retrieve {@code DEFAULT_MAX_PAGE_RESULTS} values.
*/
- private Mono> listDeletedCertificatesFirstPage(Context context) {
+ private Mono> listDeletedCertificatesFirstPage(Boolean includePending, Context context) {
try {
- return service.getDeletedCertificates(vaultUrl, DEFAULT_MAX_PAGE_RESULTS, API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
+ return service.getDeletedCertificates(vaultUrl, DEFAULT_MAX_PAGE_RESULTS, includePending, API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
.doOnRequest(ignored -> logger.info("Listing deleted certificates"))
.doOnSuccess(response -> logger.info("Listed deleted certificates"))
.doOnError(error -> logger.warning("Failed to list deleted certificates", error));
@@ -902,7 +924,7 @@ private Mono> listDeletedCertificatesFirstPage
*
*
It is possible to get the certificates with properties excluding the policy for all the versions from this information. Convert the {@link PagedFlux}
* containing {@link CertificateProperties} to {@link PagedFlux} containing {@link KeyVaultCertificate certificate} using
- * {@link CertificateAsyncClient#getCertificate(CertificateProperties certificateProperties)} within {@link Flux#flatMap(Function)}.
+ * {@link CertificateAsyncClient#getCertificateVersion(String, String)} within {@link Flux#flatMap(Function)}.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificateVersions}
*
@@ -953,61 +975,6 @@ private Mono> listCertificateVersionsNextPa
}
}
- /**
- * Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
- * the {@code certificates/create} permission.
- *
- *
Code Samples
- *
Merges a certificate with a kay pair available in the service.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificate#String-List}
- *
- * @param name the name of the certificate.
- * @param x509Certificates the certificate or certificate chain to merge.
- *
- * @throws HttpRequestException if {@code x509Certificates} is invalid/corrupt or {@code name} is empty.
- * @return A {@link Mono} containing the merged certificate.
- */
- public Mono mergeCertificate(String name, List x509Certificates) {
- try {
- return withContext(context -> mergeCertificateWithResponse(name, x509Certificates, context)).flatMap(FluxUtil::toMono);
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
- /**
- * Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
- * the {@code certificates/create} permission.
- *
- *
Code Samples
- *
Merges a certificate with a kay pair available in the service.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificateWithResponse#String-List}
- *
- * @param name the name of the certificate.
- * @param x509Certificates the certificate or certificate chain to merge.
- *
- * @throws HttpRequestException if {@code x509Certificates} is invalid/corrupt or {@code name} is empty.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the merged certificate.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> mergeCertificateWithResponse(String name, List x509Certificates) {
- try {
- return withContext(context -> mergeCertificateWithResponse(name, x509Certificates, context));
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
- Mono> mergeCertificateWithResponse(String name, List x509Certificates, Context context) {
- CertificateMergeParameters mergeParameters = new CertificateMergeParameters().x509Certificates(x509Certificates);
- return service.mergeCertificate(vaultUrl, name, API_VERSION, ACCEPT_LANGUAGE, mergeParameters, CONTENT_TYPE_HEADER_VALUE, context)
- .doOnRequest(ignored -> logger.info("Merging certificate - {}", name))
- .doOnSuccess(response -> logger.info("Merged certificate - {}", response.getValue().getProperties().getName()))
- .doOnError(error -> logger.warning("Failed to merge certificate - {}", name, error));
- }
-
/**
* Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
* the {@code certificates/create} permission.
@@ -1714,52 +1681,6 @@ Mono> deleteCertificateOperationWithResponse(Stri
.doOnError(error -> logger.warning("Failed to delete the certificate operation - {}", certificateName, error));
}
- /**
- * Cancels a certificate creation operation that is already in progress. This operation requires the {@code certificates/update} permission.
- *
- *
Code Samples
- *
Triggers certificate creation and then cancels the certificate creation operation in the Azure Key Vault. Prints out the
- * updated certificate operation details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperation#string}
- *
- * @param certificateName The name of the certificate which is in the process of being created.
- * @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when the {@code name} is empty string.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the {@link CertificateOperation cancelled certificate operation}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono cancelCertificateOperation(String certificateName) {
- try {
- return withContext(context -> cancelCertificateOperationWithResponse(certificateName, context)).flatMap(FluxUtil::toMono);
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
- /**
- * Cancels a certificate creation operation that is already in progress. This operation requires the {@code certificates/update} permission.
- *
- *
Code Samples
- *
Triggers certificate creation and then cancels the certificate creation operation in the Azure Key Vault. Prints out the
- * updated certificate operation details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperationWithResponse#string}
- *
- * @param certificateName The name of the certificate which is in the process of being created.
- * @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when the {@code name} is empty string.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the {@link CertificateOperation cancelled certificate operation}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> cancelCertificateOperationWithResponse(String certificateName) {
- try {
- return withContext(context -> cancelCertificateOperationWithResponse(certificateName, context));
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
Mono> cancelCertificateOperationWithResponse(String certificateName, Context context) {
CertificateOperationUpdateParameter parameter = new CertificateOperationUpdateParameter().cancellationRequested(true);
return service.updateCertificateOperation(vaultUrl, certificateName, API_VERSION, ACCEPT_LANGUAGE, parameter, CONTENT_TYPE_HEADER_VALUE, context)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index 36112fe5f0ca..44e4813953cf 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -12,6 +12,7 @@
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
+import com.azure.core.util.polling.PollerFlux;
import com.azure.core.util.polling.SyncPoller;
import com.azure.security.keyvault.certificates.models.CertificateOperation;
import com.azure.security.keyvault.certificates.models.CertificatePolicy;
@@ -85,7 +86,7 @@ public String getVaultUrl() {
* @param policy The policy of the certificate to be created.
* @param tags The application specific metadata to set.
* @throws ResourceModifiedException when invalid certificate policy configuration is provided.
- * @return A {@link SyncPoller} polling on the create certificate operation status.
+ * @return A {@link SyncPoller} to poll on the create certificate operation status.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public SyncPoller beginCreateCertificate(String name, CertificatePolicy policy, Map tags) {
@@ -105,13 +106,29 @@ public SyncPoller beginCreateCertific
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
* @throws ResourceModifiedException when invalid certificate policy configuration is provided.
- * @return A {@link SyncPoller} polling on the create certificate operation status.
+ * @return A {@link SyncPoller} to poll on the create certificate operation status.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public SyncPoller beginCreateCertificate(String name, CertificatePolicy policy) {
return client.beginCreateCertificate(name, policy).getSyncPoller();
}
+ /**
+ * Gets a pending {@link CertificateOperation} from the key vault. This operation requires the certificates/get permission.
+ *
+ *
Code Samples
+ *
Geta a pending certificate operation. The {@link SyncPoller poller} allows users to automatically poll on the certificate
+ * operation status.
+ *
+ * @param name The name of the certificate.
+ * @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist.
+ * @return A {@link SyncPoller} to poll on the certificate operation status.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SyncPoller getCertificateOperation(String name) {
+ return client.getCertificateOperation(name).getSyncPoller();
+ }
+
/**
* Gets information about the latest version of the specified certificate. This operation requires the certificates/get permission.
*
@@ -148,27 +165,6 @@ public Response getCertificateWithResponse(String
return client.getCertificateWithResponse(name).block();
}
-
- /**
- * Gets information about the certificate which represents the {@link CertificateProperties} from the key vault. This
- * operation requires the certificates/get permission.
- *
- *
The list operations {@link CertificateClient#listPropertiesOfCertificates()} and {@link CertificateClient#listPropertiesOfCertificateVersions(String)} return
- * the {@link PagedIterable} containing {@link CertificateProperties} as output excluding the properties like secretId and keyId of the certificate.
- * This operation can then be used to get the full certificate with its properties excluding the policy from {@code certificateProperties}.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getCertificate#CertificateProperties}
- *
- * @param certificateProperties The {@link CertificateProperties} holding attributes of the certificate being requested.
- * @throws ResourceNotFoundException when a certificate with {@link CertificateProperties#getName() name} and {@link CertificateProperties#getVersion() version} doesn't exist in the key vault.
- * @throws HttpRequestException if {@link CertificateProperties#getName()} name} or {@link CertificateProperties#getVersion() version} is empty string.
- * @return The requested {@link KeyVaultCertificate certificate}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public KeyVaultCertificate getCertificate(CertificateProperties certificateProperties) {
- return getCertificateVersionWithResponse(certificateProperties.getName(), certificateProperties.getVersion(), Context.NONE).getValue();
- }
-
/**
* Gets information about the latest version of the specified certificate. This operation requires the certificates/get permission.
*
@@ -465,7 +461,7 @@ public Response restoreCertificateBackupWithResponse(byte[]
* the response. This operation requires the certificates/list permission.
*
*
It is possible to get certificates with all the properties excluding the policy from this information. Loop over the {@link CertificateProperties} and
- * call {@link CertificateClient#getCertificate(CertificateProperties)} . This will return the {@link KeyVaultCertificate certificate}
+ * call {@link CertificateClient#getCertificateVersion(String, String)} . This will return the {@link KeyVaultCertificate certificate}
* with all its properties excluding the policy.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listCertificates}
@@ -484,7 +480,7 @@ public PagedIterable listPropertiesOfCertificates() {
* the response. This operation requires the certificates/list permission.
*
*
It is possible to get certificates with all the properties excluding the policy from this information. Loop over the {@link CertificateProperties} and
- * call {@link CertificateClient#getCertificate(CertificateProperties)} . This will return the {@link KeyVaultCertificate certificate}
+ * call {@link CertificateClient#getCertificateVersion(String, String)} . This will return the {@link KeyVaultCertificate certificate}
* with all its properties excluding the policy.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listCertificates#context}
@@ -513,7 +509,7 @@ public PagedIterable listPropertiesOfCertificates(boolean
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable listDeletedCertificates() {
- return listDeletedCertificates(Context.NONE);
+ return listDeletedCertificates(false, Context.NONE);
}
@@ -528,12 +524,13 @@ public PagedIterable listDeletedCertificates() {
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listDeletedCertificates#context}
*
+ * @param includePending indicate if pending deleted certificates should be included in the results.
* @param context Additional context that is passed through the Http pipeline during the service call.
* @return A {@link PagedIterable} containing all of the {@link DeletedCertificate deleted certificates} in the vault.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable listDeletedCertificates(Context context) {
- return new PagedIterable<>(client.listDeletedCertificates(context));
+ public PagedIterable listDeletedCertificates(Boolean includePending, Context context) {
+ return new PagedIterable<>(client.listDeletedCertificates(includePending, context));
}
/**
@@ -542,7 +539,7 @@ public PagedIterable listDeletedCertificates(Context context
* the response. This operation requires the certificates/list permission.
*
*
It is possible to get the certificates with properties excluding the policy for all the versions from this information. Loop over the {@link CertificateProperties} and
- * call {@link CertificateClient#getCertificate(CertificateProperties)}. This will return the {@link KeyVaultCertificate certificate}
+ * call {@link CertificateClient#getCertificateVersion(String, String)}. This will return the {@link KeyVaultCertificate certificate}
* with all its properties excluding the policy.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listCertificateVersions}
@@ -563,7 +560,7 @@ public PagedIterable listPropertiesOfCertificateVersions(
* the response. This operation requires the certificates/list permission.
*
*
It is possible to get the certificates with properties excluding the policy for all the versions from this information. Loop over the {@link CertificateProperties} and
- * call {@link CertificateClient#getCertificate(CertificateProperties)}. This will return the {@link KeyVaultCertificate certificate}
+ * call {@link CertificateClient#getCertificateVersion(String, String)}. This will return the {@link KeyVaultCertificate certificate}
* with all its properties excluding the policy.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listCertificateVersions#context}
@@ -588,14 +585,14 @@ public PagedIterable listPropertiesOfCertificateVersions(
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getCertificatePolicy#string}
*
- * @param name The name of the certificate whose policy is to be retrieved, cannot be null
+ * @param certificateName The name of the certificate whose policy is to be retrieved, cannot be null
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
* @throws HttpRequestException if {@code name} is empty string.
* @return The requested {@link CertificatePolicy certificate policy}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public CertificatePolicy getCertificatePolicy(String name) {
- return getCertificatePolicyWithResponse(name, Context.NONE).getValue();
+ public CertificatePolicy getCertificatePolicy(String certificateName) {
+ return getCertificatePolicyWithResponse(certificateName, Context.NONE).getValue();
}
/**
@@ -607,14 +604,14 @@ public CertificatePolicy getCertificatePolicy(String name) {
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getCertificatePolicyWithResponse#string}
*
- * @param name The name of the certificate whose policy is to be retrieved, cannot be null
+ * @param certificateName The name of the certificate whose policy is to be retrieved, cannot be null
* @param context Additional context that is passed through the Http pipeline during the service call.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
* @throws HttpRequestException if {@code name} is empty string.
* @return A {@link Response} whose {@link Response#getValue() value} contains the requested {@link CertificatePolicy certificate policy}.
*/
- public Response getCertificatePolicyWithResponse(String name, Context context) {
- return client.getCertificatePolicyWithResponse(name, context).block();
+ public Response getCertificatePolicyWithResponse(String certificateName, Context context) {
+ return client.getCertificatePolicyWithResponse(certificateName, context).block();
}
/**
@@ -1070,85 +1067,6 @@ public Response deleteCertificateOperationWithResponse(Str
return client.deleteCertificateOperationWithResponse(certificateName, context).block();
}
- /**
- * Cancels a certificate creation operation that is already in progress. This operation requires the {@code certificates/update} permission.
- *
- *
Code Samples
- *
Triggers certificate creation and then cancels the certificate creation operation in the Azure Key Vault. Subscribes to the call and prints out the
- * updated certificate operation details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperation#string}
- *
- * @param certificateName The name of the certificate which is in the process of being created.
- * @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when the {@code name} is empty string.
- * @return A {@link Response} whose {@link Response#getValue() value} contains the {@link CertificateOperation cancelled certificate operation}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public CertificateOperation cancelCertificateOperation(String certificateName) {
- return cancelCertificateOperationWithResponse(certificateName, Context.NONE).getValue();
- }
-
-
- /**
- * Cancels a certificate creation operation that is already in progress. This operation requires the {@code certificates/update} permission.
- *
- *
Code Samples
- *
Triggers certificate creation and then cancels the certificate creation operation in the Azure Key Vault. Subscribes to the call and prints out the
- * updated certificate operation details when a response has been received.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperationWithResponse#string}
- *
- * @param certificateName The name of the certificate which is in the process of being created.
- * @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist in the key vault.
- * @throws HttpRequestException when the {@code name} is empty string.
- * @return A {@link Response} whose {@link Response#getValue() value} contains the {@link CertificateOperation cancelled certificate operation}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response cancelCertificateOperationWithResponse(String certificateName, Context context) {
- return client.cancelCertificateOperationWithResponse(certificateName, context).block();
- }
-
- /**
- * Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
- * the {@code certificates/create} permission.
- *
- *
Code Samples
- *
Merges a certificate with a kay pair available in the service.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.mergeCertificate#String-List}
- *
- * @param name the name of the certificate.
- * @param x509Certificates the certificate or certificate chain to merge.
- * @throws HttpRequestException if {@code x509Certificates} is invalid/corrupt or {@code name} is empty.
- * @return The merged certificate.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public KeyVaultCertificate mergeCertificate(String name, List x509Certificates) {
- return mergeCertificateWithResponse(name, x509Certificates, Context.NONE).getValue();
- }
-
- /**
- * Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
- * the {@code certificates/create} permission.
- *
- *
Code Samples
- *
Merges a certificate with a kay pair available in the service.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.mergeCertificateWithResponse#String-List-Context}
- *
- * @param name the name of the certificate.
- * @param x509Certificates the certificate or certificate chain to merge.
- * @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws HttpRequestException if {@code x509Certificates} is invalid/corrupt or {@code name} is empty.
- * @return The merged certificate.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response mergeCertificateWithResponse(String name, List x509Certificates, Context context) {
- return client.mergeCertificateWithResponse(name, x509Certificates, context).block();
- }
-
/**
* Merges a certificate or a certificate chain with a key pair currently available in the service. This operation requires
* the {@code certificates/create} permission.
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
index 2cc4c625927d..209a3c0979fd 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateService.java
@@ -255,6 +255,7 @@ Mono> restoreCertificate(@HostParam("url") String
@ReturnValueWireType(DeletedCertificatePage.class)
Mono> getDeletedCertificates(@HostParam("url") String url,
@QueryParam("maxresults") Integer maxresults,
+ @QueryParam("includePending") Boolean includePending,
@QueryParam("api-version") String apiVersion,
@HeaderParam("accept-language") String acceptLanguage,
@HeaderParam("Content-Type") String type,
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java
new file mode 100644
index 000000000000..741f46b18896
--- /dev/null
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java
@@ -0,0 +1,21 @@
+package com.azure.security.keyvault.certificates;
+
+
+import com.azure.security.keyvault.certificates.models.MergeCertificateOptions;
+
+public class WellKnownIssuerNames {
+
+ /**
+ * Create a self-issued certificate.
+ */
+ public static String SELF = "Self";
+
+
+ /**
+ * Creates a certificate that requires merging an external X.509 certificate using
+ * {@link CertificateClient#mergeCertificate(MergeCertificateOptions)} or
+ * {@link CertificateAsyncClient#mergeCertificate(MergeCertificateOptions)}.
+ */
+ public static String UNKNOWN = "Unknown";
+
+}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperation.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperation.java
index 219471baa5a2..5fe138181791 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperation.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperation.java
@@ -64,7 +64,7 @@ public final class CertificateOperation {
* Error encountered, if any, during the certificate operation.
*/
@JsonProperty(value = "error")
- private Error error;
+ private CertificateOperationError error;
/**
* Location which contains the result of the certificate operation.
@@ -155,7 +155,7 @@ public String getStatusDetails() {
*
* @return the error
*/
- public Error getError() {
+ public CertificateOperationError getError() {
return this.error;
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java
new file mode 100644
index 000000000000..d507f351d216
--- /dev/null
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java
@@ -0,0 +1,54 @@
+package com.azure.security.keyvault.certificates.models;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Represents the error in {@link CertificateOperation}.
+ */
+public class CertificateOperationError {
+ /**
+ * The error code.
+ */
+ @JsonProperty(value = "code", access = JsonProperty.Access.WRITE_ONLY)
+ private String code;
+
+ /**
+ * The error message.
+ */
+ @JsonProperty(value = "message", access = JsonProperty.Access.WRITE_ONLY)
+ private String message;
+
+ /**
+ * The getInnerError property.
+ */
+ @JsonProperty(value = "innererror", access = JsonProperty.Access.WRITE_ONLY)
+ private CertificateOperationError innerError;
+
+ /**
+ * Get the code.
+ *
+ * @return the code
+ */
+ public String getCode() {
+ return this.code;
+ }
+
+ /**
+ * Get the message.
+ *
+ * @return the message
+ */
+ public String getMessage() {
+ return this.message;
+ }
+
+ /**
+ * Get the inner error.
+ *
+ * @return the inner error
+ */
+ public CertificateOperationError getInnerError() {
+ return this.innerError;
+ }
+
+}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
index 4ac61a4d72c5..175c88cf9f5c 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
@@ -20,8 +20,6 @@
*/
public final class CertificatePolicy {
- public static final CertificatePolicy DEFAULT = new CertificatePolicy("Self", "CN=DefaultPolicy");
-
/**
* The subject name. Should be a valid X509 distinguished Name.
*/
@@ -491,6 +489,14 @@ public List getLifeTimeActions() {
return this.lifeTimeActions;
}
+ /**
+ * Get the default certificate policy.
+ * @return the default certificate policy.
+ */
+ public static CertificatePolicy getDefaultPolicy() {
+ return new CertificatePolicy("Self", "CN=DefaultPolicy");
+ }
+
@JsonProperty("key_props")
private void unpackKeyProperties(Map keyProps) {
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
index 8a169711363d..8b52f1240a4b 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
@@ -151,7 +151,8 @@ public void getCertificateWithResponseCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.getCertificate#CertificateProperties
certificateAsyncClient.getCertificate("certificateName")
.subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(certificate -> certificateAsyncClient.getCertificate(certificate.getProperties())
+ .subscribe(certificate -> certificateAsyncClient.getCertificateVersion(certificate.getName(),
+ certificate.getProperties().getVersion())
.subscribe(certificateResponse ->
System.out.printf("Certificate is returned with name %s and secretId %s %n",
certificateResponse.getProperties().getName(), certificateResponse.getSecretId())));
@@ -529,7 +530,8 @@ public void listCertificatesCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificates
certificateAsyncClient.listPropertiesOfCertificates()
.subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(certificateBase -> certificateAsyncClient.getCertificate(certificateBase)
+ .subscribe(certificate -> certificateAsyncClient.getCertificateVersion(certificate.getName(),
+ certificate.getVersion())
.subscribe(certificateResponse -> System.out.printf("Received certificate with name %s and key id %s",
certificateResponse.getProperties().getName(), certificateResponse.getKeyId())));
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificates
@@ -570,7 +572,8 @@ public void listCertificateVersionsCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificateVersions
certificateAsyncClient.listPropertiesOfCertificateVersions("certificateName")
.subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(certificateBase -> certificateAsyncClient.getCertificate(certificateBase)
+ .subscribe(certificate -> certificateAsyncClient.getCertificateVersion(certificate.getName(),
+ certificate.getVersion())
.subscribe(certificateResponse -> System.out.printf("Received certificate with name %s and key id %s",
certificateResponse.getProperties().getName(), certificateResponse.getKeyId())));
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listCertificateVersions
@@ -602,23 +605,11 @@ public void contactsOperationsCodeSnippets() {
}
/**
- * Method to insert code snippets for {@link CertificateAsyncClient#cancelCertificateOperation(String)} and
- * {@link CertificateAsyncClient#cancelCertificateOperationWithResponse(String)}
+ * Method to insert code snippets for {@link CertificateAsyncClient#deleteCertificateOperation(String)} and
+ * {@link CertificateAsyncClient#deleteCertificateOperationWithResponse(String, com.azure.core.util.Context)}
*/
public void certificateOperationCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperation#string
- certificateAsyncClient.cancelCertificateOperation("certificateName")
- .subscribe(certificateOperation -> System.out.printf("Certificate operation status %s",
- certificateOperation.getStatus()));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperation#string
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperationWithResponse#string
- certificateAsyncClient.cancelCertificateOperationWithResponse("certificateName")
- .subscribe(certificateOperationResponse -> System.out.printf("Certificate operation status %s",
- certificateOperationResponse.getValue().getStatus()));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.cancelCertificateOperationWithResponse#string
-
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.deleteCertificateOperationWithResponse#string
certificateAsyncClient.deleteCertificateOperationWithResponse("certificateName")
.subscribe(certificateOperationResponse -> System.out.printf("Deleted Certificate operation's last"
@@ -634,24 +625,9 @@ public void certificateOperationCodeSnippets() {
/**
* Method to insert code snippets for {@link CertificateAsyncClient#mergeCertificate(MergeCertificateOptions)}
- * and {@link CertificateAsyncClient#mergeCertificate(String, List)}
*/
public void mergeCertificateCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificate#String-List
- List x509Certs = new ArrayList<>();
- certificateAsyncClient.mergeCertificate("certificateName", x509Certs)
- .subscribe(certificate -> System.out.printf("Received Certificate with name %s and key id %s",
- certificate.getProperties().getName(), certificate.getKeyId()));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificate#String-List
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificateWithResponse#String-List
- List x509Certificates = new ArrayList<>();
- certificateAsyncClient.mergeCertificateWithResponse("certificateName", x509Certificates)
- .subscribe(certificateResponse -> System.out.printf("Received Certificate with name %s and key id %s",
- certificateResponse.getValue().getProperties().getName(), certificateResponse.getValue().getKeyId()));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificateWithResponse#String-List
-
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.mergeCertificate#config
List x509CertificatesToMerge = new ArrayList<>();
MergeCertificateOptions config =
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index 72b4bfe84f97..97642c4c071b 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -107,7 +107,8 @@ public void getCertificateWithResponseCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.getCertificate#CertificateProperties
for (CertificateProperties certificateProperties : certificateClient.listPropertiesOfCertificates()) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperties = certificateClient
+ .getCertificateVersion(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate with name %s and secret id %s",
certificateWithAllProperties.getProperties().getName(), certificateWithAllProperties.getSecretId());
}
@@ -432,7 +433,8 @@ public void listCertificatesCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listCertificates
for (CertificateProperties certificateProperties : certificateClient.listPropertiesOfCertificates()) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperties = certificateClient
+ .getCertificateVersion(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate with name %s and secret id %s",
certificateWithAllProperties.getProperties().getName(),
certificateWithAllProperties.getSecretId());
@@ -442,7 +444,8 @@ public void listCertificatesCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listCertificates#context
for (CertificateProperties certificateProperties : certificateClient
.listPropertiesOfCertificates(true, new Context(key1, value1))) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperties = certificateClient
+ .getCertificateVersion(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate with name %s and secret id %s",
certificateWithAllProperties.getProperties().getName(),
certificateWithAllProperties.getSecretId());
@@ -485,7 +488,7 @@ public void listDeletedCertificatesCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listDeletedCertificates#context
for (DeletedCertificate deletedCertificate : certificateClient
- .listDeletedCertificates(new Context(key1, value1))) {
+ .listDeletedCertificates(true, new Context(key1, value1))) {
System.out.printf("Deleted certificate's recovery Id %s", deletedCertificate.getRecoveryId());
}
// END: com.azure.security.keyvault.certificates.CertificateClient.listDeletedCertificates#context
@@ -499,7 +502,8 @@ public void listCertificateVersionsCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listCertificateVersions
for (CertificateProperties certificateProperties : certificateClient
.listPropertiesOfCertificateVersions("certificateName")) {
- KeyVaultCertificate certificateWithAllProperites = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperites = certificateClient
+ .getCertificateVersion(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate's version with name %s, version %s and secret id %s",
certificateWithAllProperites.getProperties().getName(),
certificateWithAllProperites.getProperties().getVersion(), certificateWithAllProperites.getSecretId());
@@ -509,7 +513,8 @@ public void listCertificateVersionsCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listCertificateVersions#context
for (CertificateProperties certificateProperties : certificateClient
.listPropertiesOfCertificateVersions("certificateName")) {
- KeyVaultCertificate certificateWithAllProperites = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperites = certificateClient
+ .getCertificateVersion(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate's version with name %s, version %s and secret id %s",
certificateWithAllProperites.getProperties().getName(),
certificateWithAllProperites.getProperties().getVersion(), certificateWithAllProperites.getSecretId());
@@ -569,23 +574,11 @@ public void contactsOperationsCodeSnippets() {
}
/**
- * Method to insert code snippets for {@link CertificateClient#cancelCertificateOperation(String)} and
- * {@link CertificateClient#cancelCertificateOperationWithResponse(String, Context)} (String)}
+ * Method to insert code snippets for {@link CertificateClient#deleteCertificateOperation(String)} (String)} and
+ * {@link CertificateClient#deleteCertificateOperationWithResponse(String, Context)}
*/
public void certificateOperationCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperation#string
- CertificateOperation certificateOperation = certificateClient
- .cancelCertificateOperation("certificateName");
- System.out.printf("Certificate Operation status %s", certificateOperation.getStatus());
- // END: com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperation#string
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperationWithResponse#string
- Response certificateOperationWithResponse = certificateClient
- .cancelCertificateOperationWithResponse("certificateName", new Context(key1, value1));
- System.out.printf("Certificate Operation status %s", certificateOperationWithResponse.getValue().getStatus());
- // END: com.azure.security.keyvault.certificates.CertificateClient.cancelCertificateOperationWithResponse#string
-
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.deleteCertificateOperationWithResponse#string
CertificateOperation deletedCertificateOperation = certificateClient
.deleteCertificateOperation("certificateName");
@@ -602,26 +595,9 @@ public void certificateOperationCodeSnippets() {
/**
* Method to insert code snippets for {@link CertificateAsyncClient#mergeCertificate(MergeCertificateOptions)}
- * and {@link CertificateAsyncClient#mergeCertificate(String, List)}
*/
public void mergeCertificateCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.mergeCertificate#String-List
- List x509Certs = new ArrayList<>();
- KeyVaultCertificate certificate = certificateClient.mergeCertificate("certificateName", x509Certs);
- System.out.printf("Received Certificate with name %s and key id %s",
- certificate.getProperties().getName(), certificate.getKeyId());
- // END: com.azure.security.keyvault.certificates.CertificateClient.mergeCertificate#String-List
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.mergeCertificateWithResponse#String-List-Context
- List x509Certificates = new ArrayList<>();
- Response certificateResponse =
- certificateClient.mergeCertificateWithResponse("certificateName", x509Certs,
- new Context(key1, value1));
- System.out.printf("Received Certificate with name %s and key id %s",
- certificateResponse.getValue().getProperties().getName(), certificateResponse.getValue().getKeyId());
- // END: com.azure.security.keyvault.certificates.CertificateClient.mergeCertificateWithResponse#String-List-Context
-
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.mergeCertificate#config
List x509CertificatesToMerge = new ArrayList<>();
MergeCertificateOptions config =
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
index eaf8fa92bae2..206efd0370e1 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
@@ -52,7 +52,8 @@ public static void main(String[] args) throws IllegalArgumentException {
//Let's create a certificate issuer.
CertificateIssuer issuer = new CertificateIssuer("myIssuer", "Test");
CertificateIssuer myIssuer = certificateClient.createIssuer(issuer);
- System.out.printf("Issuer created with name %s and provider %s", myIssuer.getName(), myIssuer.getProperties().getProvider());
+ System.out.printf("Issuer created with name %s and provider %s", myIssuer.getName(),
+ myIssuer.getProperties().getProvider());
//Let's create a certificate signed by our issuer.
certificateClient.beginCreateCertificate("myCertificate",
@@ -62,15 +63,19 @@ public static void main(String[] args) throws IllegalArgumentException {
// Let's list all the certificates in the key vault.
for (CertificateProperties certificate : certificateClient.listPropertiesOfCertificates()) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificate);
- System.out.printf("Received certificate with name %s and secret id %s", certificateWithAllProperties.getProperties().getName(),
+ KeyVaultCertificate certificateWithAllProperties = certificateClient
+ .getCertificateVersion(certificate.getName(), certificate.getVersion());
+ System.out.printf("Received certificate with name %s and secret id %s", certificateWithAllProperties
+ .getProperties().getName(),
certificateWithAllProperties.getSecretId());
}
// Let's list all certificate versions of the certificate.
for (CertificateProperties certificate : certificateClient.listPropertiesOfCertificateVersions("myCertificate")) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificate);
- System.out.printf("Received certificate with name %s and version %s", certificateWithAllProperties.getProperties().getName(),
+ KeyVaultCertificate certificateWithAllProperties = certificateClient
+ .getCertificateVersion(certificate.getName(), certificate.getVersion());
+ System.out.printf("Received certificate with name %s and version %s", certificateWithAllProperties
+ .getProperties().getName(),
certificateWithAllProperties.getProperties().getVersion());
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
index 0c8503692f8b..a279d4029b41 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
@@ -74,7 +74,8 @@ public static void main(String[] args) throws InterruptedException {
// Let's list all the certificates in the key vault.
certificateAsyncClient.listPropertiesOfCertificates()
- .subscribe(certificateBase -> certificateAsyncClient.getCertificate(certificateBase)
+ .subscribe(certificateProeprties -> certificateAsyncClient
+ .getCertificateVersion(certificateProeprties.getName(), certificateProeprties.getVersion())
.subscribe(certificateResponse -> System.out.printf("Received certificate with name %s and key id %s \n",
certificateResponse.getProperties().getName(), certificateResponse.getKeyId())));
@@ -82,7 +83,8 @@ public static void main(String[] args) throws InterruptedException {
// Let's list all certificate versions of the certificate.
certificateAsyncClient.listPropertiesOfCertificateVersions("myCertificate")
- .subscribe(certificateBase -> certificateAsyncClient.getCertificate(certificateBase)
+ .subscribe(certificateProeprties -> certificateAsyncClient
+ .getCertificateVersion(certificateProeprties.getName(), certificateProeprties.getVersion())
.subscribe(certificateResponse -> System.out.printf("Received certificate with name %s and key id %s\n",
certificateResponse.getProperties().getName(), certificateResponse.getKeyId())));
From 3721edf34d4b32803b968bfc2d586d62f141a250 Mon Sep 17 00:00:00 2001
From: vinay
Date: Fri, 15 Nov 2019 03:16:59 +0000
Subject: [PATCH 4/9] sample updates + checkstyle fixes
---
.../keyvault/certificates/CertificateClient.java | 1 -
.../keyvault/certificates/WellKnownIssuerNames.java | 12 +++++++++---
.../models/CertificateOperationError.java | 3 +++
.../CertificateAsyncClientJavaDocCodeSnippets.java | 4 ++--
.../CertificateClientJavaDocCodeSnippets.java | 13 +++++++++++--
5 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index 44e4813953cf..2d25bf15c8ee 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -12,7 +12,6 @@
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.core.util.polling.PollerFlux;
import com.azure.core.util.polling.SyncPoller;
import com.azure.security.keyvault.certificates.models.CertificateOperation;
import com.azure.security.keyvault.certificates.models.CertificatePolicy;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java
index 741f46b18896..81af66c229e1 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/WellKnownIssuerNames.java
@@ -1,14 +1,20 @@
-package com.azure.security.keyvault.certificates;
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+package com.azure.security.keyvault.certificates;
+import com.azure.security.keyvault.certificates.models.CertificatePolicy;
import com.azure.security.keyvault.certificates.models.MergeCertificateOptions;
+/**
+ * Represents well known issuer names to refer in {@link CertificatePolicy}
+ */
public class WellKnownIssuerNames {
/**
* Create a self-issued certificate.
*/
- public static String SELF = "Self";
+ public static final String SELF = "Self";
/**
@@ -16,6 +22,6 @@ public class WellKnownIssuerNames {
* {@link CertificateClient#mergeCertificate(MergeCertificateOptions)} or
* {@link CertificateAsyncClient#mergeCertificate(MergeCertificateOptions)}.
*/
- public static String UNKNOWN = "Unknown";
+ public static final String UNKNOWN = "Unknown";
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java
index d507f351d216..bd666606a0ea 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateOperationError.java
@@ -1,3 +1,6 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
package com.azure.security.keyvault.certificates.models;
import com.fasterxml.jackson.annotation.JsonProperty;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
index 8b52f1240a4b..5b7eccbf77cb 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
@@ -545,7 +545,7 @@ public void listCertificateIssuersCodeSnippets() {
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.listIssuers
certificateAsyncClient.listPropertiesOfIssuers()
.subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(issuerBase -> certificateAsyncClient.getIssuer(issuerBase)
+ .subscribe(issuerProperties -> certificateAsyncClient.getIssuer(issuerProperties.getName())
.subscribe(issuerResponse -> System.out.printf("Received issuer with name %s and provider %s",
issuerResponse.getName(), issuerResponse.getProperties().getProvider())));
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listIssuers
@@ -598,7 +598,7 @@ public void contactsOperationsCodeSnippets() {
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listContacts
// BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.deleteContacts
- certificateAsyncClient.listContacts().subscribe(contact ->
+ certificateAsyncClient.deleteContacts().subscribe(contact ->
System.out.printf("Deleted Contact name %s and email %s", contact.getName(), contact.getEmailAddress())
);
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.deleteContacts
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index 97642c4c071b..e341d8e67630 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -12,8 +12,17 @@
import com.azure.core.util.polling.PollResponse;
import com.azure.core.util.polling.SyncPoller;
import com.azure.identity.DefaultAzureCredentialBuilder;
-import com.azure.security.keyvault.certificates.models.*;
+import com.azure.security.keyvault.certificates.models.CertificateOperation;
+import com.azure.security.keyvault.certificates.models.CertificatePolicy;
+import com.azure.security.keyvault.certificates.models.DeletedCertificate;
+import com.azure.security.keyvault.certificates.models.CertificateIssuer;
+import com.azure.security.keyvault.certificates.models.IssuerProperties;
+import com.azure.security.keyvault.certificates.models.MergeCertificateOptions;
import com.azure.security.keyvault.certificates.models.AdministratorContact;
+import com.azure.security.keyvault.certificates.models.CertificateProperties;
+import com.azure.security.keyvault.certificates.models.KeyVaultCertificate;
+import com.azure.security.keyvault.certificates.models.KeyVaultCertificateWithPolicy;
+import com.azure.security.keyvault.certificates.models.CertificateContact;
import java.util.ArrayList;
import java.util.Arrays;
@@ -460,7 +469,7 @@ public void listCertificateIssuersCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listIssuers
for (IssuerProperties issuer : certificateClient.listPropertiesOfIssuers()) {
- CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer);
+ CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer.getName());
System.out.printf("Received issuer with name %s and provider %s", retrievedIssuer.getName(),
retrievedIssuer.getProperties().getProvider());
}
From d5ea025b0475c0d000a1b8451b29dfcb4e379df8 Mon Sep 17 00:00:00 2001
From: vinay
Date: Tue, 19 Nov 2019 18:26:47 +0000
Subject: [PATCH 5/9] feedback updates
---
.../README.md | 23 ++--
.../certificates/CertificateAsyncClient.java | 111 +++++-------------
.../certificates/CertificateClient.java | 92 ++++-----------
.../CertificateClientBuilder.java | 2 +
.../CertificateRequestAttributes.java | 6 +-
.../KeyVaultCredentialPolicy.java | 2 +-
.../{ => implementation}/ScopeTokenCache.java | 2 +-
.../models/AdministratorContact.java | 12 +-
.../models/CertificateIssuer.java | 16 +--
...ons.java => ImportCertificateOptions.java} | 12 +-
...ificateAsyncClientJavaDocCodeSnippets.java | 30 +----
.../CertificateClientJavaDocCodeSnippets.java | 32 ++---
12 files changed, 105 insertions(+), 235 deletions(-)
rename sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/{ => implementation}/KeyVaultCredentialPolicy.java (98%)
rename sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/{ => implementation}/ScopeTokenCache.java (96%)
rename sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/{CertificateImportOptions.java => ImportCertificateOptions.java} (90%)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/README.md b/sdk/keyvault/azure-security-keyvault-certificates/README.md
index 4a1508272ed6..63c51a09bc0a 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/README.md
+++ b/sdk/keyvault/azure-security-keyvault-certificates/README.md
@@ -214,12 +214,16 @@ System.out.printf("Updated Certificate with name %s and enabled status %s", upda
### Delete a Certificate
-Delete an existing Certificate by calling `deleteCertificate`.
+Delete an existing Certificate by calling `beginDeleteCertificate`.
```Java
-DeletedCertificate deletedCertificate = certificateClient.deleteCertificate("certificateName");
-System.out.printf("Deleted certificate with name %s and recovery id %s", deletedCertificate.getName(),
- deletedCertificate.getRecoveryId());
+SyncPoller deletedCertificatePoller =
+ certificateClient.beginDeleteCertificate("certificateName");
+// Deleted Certificate is accessible as soon as polling beings.
+PollResponse pollResponse = deletedCertificatePoller.poll();
+System.out.printf("Deleted certitifcate with name %s and recovery id %s", pollResponse.getValue().getName(),
+ pollResponse.getValue().getRecoveryId());
+deletedCertificatePoller.waitForCompletion();
```
### List Certificates
@@ -301,12 +305,15 @@ certificateAsyncClient.getCertificate("certificateName")
### Delete a Certificate Asynchronously
-Delete an existing Certificate by calling `deleteCertificate`.
+Delete an existing Certificate by calling `beginDeleteCertificate`.
```java
-certificateAsyncClient.deleteCertificate("certificateName")
- .subscribe(deletedSecretResponse ->
- System.out.printf("Deleted Certificate's Recovery Id %s \n", deletedSecretResponse.getRecoveryId()));
+certificateAsyncClient.beginDeleteCertificate("certificateName")
+ .subscribe(pollResponse -> {
+ System.out.println("Delete Status: " + pollResponse.getStatus().toString());
+ System.out.println("Delete Certificate Name: " + pollResponse.getValue().getName());
+ System.out.println("Certificate Delete Date: " + pollResponse.getValue().getDeletedOn().toString());
+ });
```
### List Certificates Asynchronously
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
index a065f8ff3658..b68f5bdd17c6 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
@@ -38,7 +38,7 @@
import com.azure.security.keyvault.certificates.models.KeyVaultCertificateWithPolicy;
import com.azure.security.keyvault.certificates.models.CertificatePolicyAction;
import com.azure.security.keyvault.certificates.models.LifeTimeAction;
-import com.azure.security.keyvault.certificates.models.CertificateImportOptions;
+import com.azure.security.keyvault.certificates.models.ImportCertificateOptions;
import java.net.HttpURLConnection;
import java.net.URL;
@@ -410,7 +410,7 @@ Mono> updateCertificatePropertiesWithResponse(Cert
*
Code Samples
*
Deletes the certificate in the Azure Key Vault. Prints out the deleted certificate details when a response has been received.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.begindeleteCertificate#string}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.beginDeleteCertificate#string}
*
* @param name The name of the certificate to be deleted.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
@@ -428,23 +428,23 @@ public PollerFlux beginDeleteCertificate(String name)
private Function, Mono> activationOperation(String name) {
return (pollingContext) -> withContext(context -> deleteCertificateWithResponse(name, context)
- .flatMap(deletedKeyResponse -> Mono.just(deletedKeyResponse.getValue())));
+ .flatMap(deletedCertificateResponse -> Mono.just(deletedCertificateResponse.getValue())));
}
/*
- Polling operation to poll on create delete key operation status.
+ Polling operation to poll on create delete certificate operation status.
*/
private Function, Mono>> createDeletePollOperation(String keyName) {
return pollingContext ->
withContext(context -> service.getDeletedCertificatePoller(vaultUrl, keyName, API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
- .flatMap(deletedKeyResponse -> {
- if (deletedKeyResponse.getStatusCode() == HttpURLConnection.HTTP_NOT_FOUND) {
+ .flatMap(deletedCertificateResponse -> {
+ if (deletedCertificateResponse.getStatusCode() == HttpURLConnection.HTTP_NOT_FOUND) {
return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.IN_PROGRESS,
pollingContext.getLatestResponse().getValue())));
}
- return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, deletedKeyResponse.getValue())));
+ return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, deletedCertificateResponse.getValue())));
}))
- // This means either vault has soft-delete disabled or permission is not granted for the get deleted key operation.
+ // This means either vault has soft-delete disabled or permission is not granted for the get deleted certificate operation.
// In both cases deletion operation was successful when activation operation succeeded before reaching here.
.onErrorReturn(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED, pollingContext.getLatestResponse().getValue()));
}
@@ -577,7 +577,7 @@ Mono> purgeDeletedCertificateWithResponse(String name, Context co
*
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
* recovered certificate details when a response has been received.
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginrecoverDeletedCertificate#string}
+ * {@codesnippet com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginRecoverDeletedCertificate#string}
*
* @param name The name of the deleted certificate to be recovered.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
@@ -595,22 +595,22 @@ public PollerFlux beginRecoverDeletedCertificate(Stri
private Function, Mono> recoverActivationOperation(String name) {
return (pollingContext) -> withContext(context -> recoverDeletedCertificateWithResponse(name, context)
- .flatMap(keyResponse -> Mono.just(keyResponse.getValue())));
+ .flatMap(certificateResponse -> Mono.just(certificateResponse.getValue())));
}
/*
- Polling operation to poll on create delete key operation status.
+ Polling operation to poll on create delete certificate operation status.
*/
private Function, Mono>> createRecoverPollOperation(String keyName) {
return pollingContext ->
withContext(context -> service.getCertificatePoller(vaultUrl, keyName, "", API_VERSION, ACCEPT_LANGUAGE, CONTENT_TYPE_HEADER_VALUE, context)
- .flatMap(keyResponse -> {
- if (keyResponse.getStatusCode() == 404) {
+ .flatMap(certificateResponse -> {
+ if (certificateResponse.getStatusCode() == HttpURLConnection.HTTP_NOT_FOUND) {
return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.IN_PROGRESS,
pollingContext.getLatestResponse().getValue())));
}
return Mono.defer(() -> Mono.just(new PollResponse<>(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED,
- keyResponse.getValue())));
+ certificateResponse.getValue())));
}))
// This means permission is not granted for the get deleted key operation.
// In both cases deletion operation was successful when activation operation succeeded before reaching here.
@@ -986,8 +986,8 @@ private Mono> listCertificateVersionsNextPa
*
* @param mergeCertificateOptions the merge certificate options holding the x509 certificates.
*
- * @throws NullPointerException when {@code mergeCertificateConfig} is null.
- * @throws HttpRequestException if {@code mergeCertificateConfig} is invalid/corrupt.
+ * @throws NullPointerException when {@code mergeCertificateOptions} is null.
+ * @throws HttpRequestException if {@code mergeCertificateOptions} is invalid/corrupt.
* @return A {@link Mono} containing the merged certificate.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
@@ -1010,28 +1010,28 @@ public Mono mergeCertificate(MergeCertificateOptions mergeC
*
* @param mergeCertificateOptions the merge certificate options holding the x509 certificates.
*
- * @throws NullPointerException when {@code mergeCertificateConfig} is null.
- * @throws HttpRequestException if {@code mergeCertificateConfig} is invalid/corrupt.
+ * @throws NullPointerException when {@code mergeCertificateOptions} is null.
+ * @throws HttpRequestException if {@code mergeCertificateOptions} is invalid/corrupt.
* @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the merged certificate.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono> mergeCertificateWithResponse(MergeCertificateOptions mergeCertificateOptions) {
try {
- Objects.requireNonNull(mergeCertificateOptions, "'mergeCertificateConfig' cannot be null.");
+ Objects.requireNonNull(mergeCertificateOptions, "'mergeCertificateOptions' cannot be null.");
return withContext(context -> mergeCertificateWithResponse(mergeCertificateOptions, context));
} catch (RuntimeException ex) {
return monoError(logger, ex);
}
}
- Mono> mergeCertificateWithResponse(MergeCertificateOptions mergeCertificateConfig, Context context) {
- CertificateMergeParameters mergeParameters = new CertificateMergeParameters().x509Certificates(mergeCertificateConfig.getX509Certificates())
- .tags(mergeCertificateConfig.getTags())
- .certificateAttributes(new CertificateRequestAttributes().enabled(mergeCertificateConfig.isEnabled()));
- return service.mergeCertificate(vaultUrl, mergeCertificateConfig.getName(), API_VERSION, ACCEPT_LANGUAGE, mergeParameters, CONTENT_TYPE_HEADER_VALUE, context)
- .doOnRequest(ignored -> logger.info("Merging certificate - {}", mergeCertificateConfig.getName()))
+ Mono> mergeCertificateWithResponse(MergeCertificateOptions mergeCertificateOptions, Context context) {
+ CertificateMergeParameters mergeParameters = new CertificateMergeParameters().x509Certificates(mergeCertificateOptions.getX509Certificates())
+ .tags(mergeCertificateOptions.getTags())
+ .certificateAttributes(new CertificateRequestAttributes().enabled(mergeCertificateOptions.isEnabled()));
+ return service.mergeCertificate(vaultUrl, mergeCertificateOptions.getName(), API_VERSION, ACCEPT_LANGUAGE, mergeParameters, CONTENT_TYPE_HEADER_VALUE, context)
+ .doOnRequest(ignored -> logger.info("Merging certificate - {}", mergeCertificateOptions.getName()))
.doOnSuccess(response -> logger.info("Merged certificate - {}", response.getValue().getProperties().getName()))
- .doOnError(error -> logger.warning("Failed to merge certificate - {}", mergeCertificateConfig.getName(), error));
+ .doOnError(error -> logger.warning("Failed to merge certificate - {}", mergeCertificateOptions.getName(), error));
}
/**
@@ -1295,54 +1295,6 @@ Mono> getIssuerWithResponse(String name, Context con
.doOnError(error -> logger.warning("Failed to retreive the certificate issuer - {}", name, error));
}
- /**
- * Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
- * requires the certificates/manageissuers/getissuers permission.
- *
- *
The list operations {@link CertificateAsyncClient#listPropertiesOfIssuers()} return the {@link PagedFlux} containing
- * {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
- * This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuer#issuerProperties}
- *
- * @param issuerProperties The {@link IssuerProperties issuerProperties} holding attributes of the certificate issuer being requested.
- * @throws ResourceNotFoundException when a certificate with {@link IssuerProperties#getName() name} doesn't exist in the key vault.
- * @throws HttpRequestException if {@link IssuerProperties#getName() name} is empty string.
- * @return A {@link Mono} containing the requested {@link CertificateIssuer certificate issuer}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono getIssuer(IssuerProperties issuerProperties) {
- try {
- return withContext(context -> getIssuerWithResponse(issuerProperties.getName(), context)).flatMap(FluxUtil::toMono);
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
- /**
- * Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
- * requires the certificates/manageissuers/getissuers permission.
- *
- *
The list operations {@link CertificateAsyncClient#listPropertiesOfIssuers()} return the {@link PagedFlux} containing
- * {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
- * This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuerWithResponse#issuerProperties}
- *
- * @param issuerProperties The {@link IssuerProperties issuerProperties} holding attributes of the certificate issuer being requested.
- * @throws ResourceNotFoundException when a certificate with {@link IssuerProperties#getName() name} doesn't exist in the key vault.
- * @throws HttpRequestException if {@link IssuerProperties#getName() name} is empty string.
- * @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the requested {@link CertificateIssuer certificate issuer}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> getIssuerWithResponse(IssuerProperties issuerProperties) {
- try {
- return withContext(context -> getIssuerWithResponse(issuerProperties.getName(), context));
- } catch (RuntimeException ex) {
- return monoError(logger, ex);
- }
- }
-
/**
* Deletes the specified certificate issuer. The DeleteCertificateIssuer operation permanently removes the specified certificate
* issuer from the key vault. This operation requires the {@code certificates/manageissuers/deleteissuers permission}.
@@ -1406,9 +1358,8 @@ Mono> deleteIssuerWithResponse(String name, Context
*
*
It is possible to get the certificate issuer with all of its properties from this information. Convert the {@link PagedFlux}
* containing {@link IssuerProperties issuerProperties} to {@link PagedFlux} containing {@link CertificateIssuer issuer} using
- * {@link CertificateAsyncClient#getIssuer(IssuerProperties issuerProperties)} within {@link PagedFlux#flatMap(Function)}.
Deletes the certificate in the Azure Key Vault. Prints out the
* deleted certificate details when a response has been received.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.begindeleteCertificate#string}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.beginDeleteCertificate#string}
*
* @param name The name of the certificate to be deleted.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the key vault.
@@ -361,7 +350,7 @@ public Response purgeDeletedCertificateWithResponse(String name, Context c
*
Recovers the deleted certificate from the key vault enabled for soft-delete. Prints out the
* recovered certificate details when a response has been received.
- * {@codesnippet com.azure.security.certificatevault.certificates.CertificateClient.beginrecoverDeletedCertificate#string}
+ * {@codesnippet com.azure.security.certificatevault.certificates.CertificateClient.beginRecoverDeletedCertificate#string}
*
* @param name The name of the deleted certificate to be recovered.
* @throws ResourceNotFoundException when a certificate with {@code name} doesn't exist in the certificate vault.
@@ -759,47 +748,6 @@ public CertificateIssuer getIssuer(String name) {
return getIssuerWithResponse(name, Context.NONE).getValue();
}
- /**
- * Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
- * requires the certificates/manageissuers/getissuers permission.
- *
- *
The list operations {@link CertificateClient#listPropertiesOfIssuers()} return the {@link PagedIterable} containing
- * {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
- * This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getIssuer#issuerProperties}
- *
- * @param issuerProperties The {@link IssuerProperties issuerProperties} holding attributes of the certificate issuer being requested.
- * @throws ResourceNotFoundException when a certificate with {@link IssuerProperties#getName() name} doesn't exist in the key vault.
- * @throws HttpRequestException if {@link IssuerProperties#getName() name} is empty string.
- * @return The requested {@link CertificateIssuer certificate issuer}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public CertificateIssuer getIssuer(IssuerProperties issuerProperties) {
- return getIssuerWithResponse(issuerProperties, Context.NONE).getValue();
- }
-
- /**
- * Gets information about the certificate issuer which represents the {@link IssuerProperties} from the key vault. This operation
- * requires the certificates/manageissuers/getissuers permission.
- *
- *
The list operations {@link CertificateClient#listPropertiesOfIssuers()} return the {@link PagedIterable} containing
- * {@link IssuerProperties issuerProperties} as output excluding the properties like accountId and organization details of the certificate issuer.
- * This operation can then be used to get the full certificate issuer with its properties from {@code issuerProperties}.
- *
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getIssuerWithResponse#issuerProperties-context}
- *
- * @param issuerProperties The {@link IssuerProperties issuerProperties} holding attributes of the certificate issuer being requested.
- * @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws ResourceNotFoundException when a certificate with {@link IssuerProperties#getName() name} doesn't exist in the key vault.
- * @throws HttpRequestException if {@link IssuerProperties#getName() name} is empty string.
- * @return A {@link Response} whose {@link Response#getValue() value} contains the requested {@link CertificateIssuer certificate issuer}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response getIssuerWithResponse(IssuerProperties issuerProperties, Context context) {
- return client.getIssuerWithResponse(issuerProperties.getName(), context).block();
- }
-
/**
* Deletes the specified certificate issuer. The DeleteCertificateIssuer operation permanently removes the specified certificate
* issuer from the key vault. This operation requires the {@code certificates/manageissuers/deleteissuers permission}.
@@ -847,7 +795,7 @@ public CertificateIssuer deleteIssuer(String name) {
* {@code certificates/manageissuers/getissuers} permission.
*
*
It is possible to get the certificate issuer with all of its properties from this information. Loop over the {@link IssuerProperties issuerProperties} and
- * call {@link CertificateClient#getIssuer(IssuerProperties issuerProperties)} . This will return the {@link CertificateIssuer issuer}
+ * call {@link CertificateClient#getIssuer(String)} . This will return the {@link CertificateIssuer issuer}
* with all its properties.
.
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listIssuers}
@@ -865,10 +813,10 @@ public PagedIterable listPropertiesOfIssuers() {
* {@code certificates/manageissuers/getissuers} permission.
*
*
It is possible to get the certificate issuer with all of its properties from this information. Loop over the {@link IssuerProperties issuerProperties} and
- * call {@link CertificateClient#getIssuer(IssuerProperties issuerProperties)} . This will return the {@link CertificateIssuer issuer}
+ * call {@link CertificateClient#getIssuer(String)}. This will return the {@link CertificateIssuer issuer}
* with all its properties.
.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listIssuers#context}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers#context}
*
* @param context Additional context that is passed through the Http pipeline during the service call.
* @return A {@link PagedIterable} containing all of the {@link IssuerProperties certificate issuers} in the vault.
@@ -1075,14 +1023,14 @@ public Response deleteCertificateOperationWithResponse(Str
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.mergeCertificate#config}
*
- * @param mergeCertificateConfig the merge certificate configuration holding the x509 certificates.
- * @throws NullPointerException when {@code mergeCertificateConfig} is null.
- * @throws HttpRequestException if {@code mergeCertificateConfig} is invalid/corrupt.
+ * @param mergeCertificateOptions the merge certificate configuration holding the x509 certificates.
+ * @throws NullPointerException when {@code mergeCertificateOptions} is null.
+ * @throws HttpRequestException if {@code mergeCertificateOptions} is invalid/corrupt.
* @return The merged certificate.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public KeyVaultCertificate mergeCertificate(MergeCertificateOptions mergeCertificateConfig) {
- return mergeCertificateWithResponse(mergeCertificateConfig, Context.NONE).getValue();
+ public KeyVaultCertificate mergeCertificate(MergeCertificateOptions mergeCertificateOptions) {
+ return mergeCertificateWithResponse(mergeCertificateOptions, Context.NONE).getValue();
}
/**
@@ -1094,16 +1042,16 @@ public KeyVaultCertificate mergeCertificate(MergeCertificateOptions mergeCertifi
*
* {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.mergeCertificateWithResponse#config}
*
- * @param mergeCertificateConfig the merge certificate configuration holding the x509 certificates.
+ * @param mergeCertificateOptions the merge certificate configuration holding the x509 certificates.
* @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws NullPointerException when {@code mergeCertificateConfig} is null.
- * @throws HttpRequestException if {@code mergeCertificateConfig} is invalid/corrupt.
+ * @throws NullPointerException when {@code mergeCertificateOptions} is null.
+ * @throws HttpRequestException if {@code mergeCertificateOptions} is invalid/corrupt.
* @return A {@link Response} whose {@link Response#getValue() value} contains the merged certificate.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Response mergeCertificateWithResponse(MergeCertificateOptions mergeCertificateConfig, Context context) {
- Objects.requireNonNull(mergeCertificateConfig, "'mergeCertificateConfig' cannot be null.");
- return client.mergeCertificateWithResponse(mergeCertificateConfig, context).block();
+ public Response mergeCertificateWithResponse(MergeCertificateOptions mergeCertificateOptions, Context context) {
+ Objects.requireNonNull(mergeCertificateOptions, "'mergeCertificateOptions' cannot be null.");
+ return client.mergeCertificateWithResponse(mergeCertificateOptions, context).block();
}
/**
@@ -1114,7 +1062,7 @@ public Response mergeCertificateWithResponse(MergeCertifica
* @throws HttpRequestException when the {@code importOptions} are invalid.
* @return the {@link KeyVaultCertificate imported certificate}.
*/
- public KeyVaultCertificate importCertificate(CertificateImportOptions importOptions) {
+ public KeyVaultCertificate importCertificate(ImportCertificateOptions importOptions) {
return importCertificateWithResponse(importOptions, Context.NONE).getValue();
}
@@ -1127,7 +1075,7 @@ public KeyVaultCertificate importCertificate(CertificateImportOptions importOpti
* @throws HttpRequestException when the {@code importOptions} are invalid.
* @return A {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate imported certificate}.
*/
- public Response importCertificateWithResponse(CertificateImportOptions importOptions, Context context) {
+ public Response importCertificateWithResponse(ImportCertificateOptions importOptions, Context context) {
return client.importCertificateWithResponse(importOptions, context).block();
}
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClientBuilder.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClientBuilder.java
index 203fb285ab9f..6712ac3db7db 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClientBuilder.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClientBuilder.java
@@ -18,6 +18,8 @@
import com.azure.core.util.CoreUtils;
import com.azure.core.util.Configuration;
import com.azure.core.util.logging.ClientLogger;
+import com.azure.security.keyvault.certificates.implementation.KeyVaultCredentialPolicy;
+
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
index c92e848a9cb0..7bebba4d4bdb 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateRequestAttributes.java
@@ -3,7 +3,7 @@
package com.azure.security.keyvault.certificates;
-import com.azure.security.keyvault.certificates.models.CertificateImportOptions;
+import com.azure.security.keyvault.certificates.models.ImportCertificateOptions;
import com.azure.security.keyvault.certificates.models.CertificateProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -31,8 +31,8 @@ class CertificateRequestAttributes {
this.enabled = certificateProperties.isEnabled();
}
- CertificateRequestAttributes(CertificateImportOptions certificateImportOptions) {
- this.enabled = certificateImportOptions.isEnabled();
+ CertificateRequestAttributes(ImportCertificateOptions importCertificateOptions) {
+ this.enabled = importCertificateOptions.isEnabled();
}
CertificateRequestAttributes() {
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/KeyVaultCredentialPolicy.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/KeyVaultCredentialPolicy.java
similarity index 98%
rename from sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/KeyVaultCredentialPolicy.java
rename to sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/KeyVaultCredentialPolicy.java
index 5e5e11daa788..2c133ec55a00 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/KeyVaultCredentialPolicy.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/KeyVaultCredentialPolicy.java
@@ -1,7 +1,7 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
-package com.azure.security.keyvault.certificates;
+package com.azure.security.keyvault.certificates.implementation;
import com.azure.core.credential.TokenCredential;
import com.azure.core.credential.TokenRequestContext;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/ScopeTokenCache.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/ScopeTokenCache.java
similarity index 96%
rename from sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/ScopeTokenCache.java
rename to sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/ScopeTokenCache.java
index fe04fc7900b6..42de6b85c5b3 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/ScopeTokenCache.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/implementation/ScopeTokenCache.java
@@ -1,7 +1,7 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
-package com.azure.security.keyvault.certificates;
+package com.azure.security.keyvault.certificates.implementation;
import com.azure.core.credential.AccessToken;
import com.azure.core.credential.TokenRequestContext;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
index 735f95c320d4..13813951cb67 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
@@ -31,7 +31,7 @@ public final class AdministratorContact {
* Phone number.
*/
@JsonProperty(value = "phone")
- private String contact;
+ private String phone;
/**
* Creates an administrator of the issuer.
@@ -50,13 +50,13 @@ public AdministratorContact(String firstName, String lastName, String email) {
* @param firstName the firstName of the admin.
* @param lastName the last name of the admin.
* @param email the email of the admin.
- * @param contact tne contact info of the admin.
+ * @param phone tne contact info of the admin.
*/
- public AdministratorContact(String firstName, String lastName, String email, String contact) {
+ public AdministratorContact(String firstName, String lastName, String email, String phone) {
this.firstName = firstName;
this.lastName = lastName;
this.email = email;
- this.contact = contact;
+ this.phone = phone;
}
/**
@@ -87,7 +87,7 @@ public String getEmail() {
* Get the contact of the admin.
* @return the contact of admin.
*/
- public String getContact() {
- return contact;
+ public String getPhone() {
+ return phone;
}
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
index fda9e0840402..55d80ab0621b 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateIssuer.java
@@ -97,7 +97,7 @@ public String getName() {
}
/**
- * Get the account id of the isssuer.
+ * Get the account id of the issuer.
* @return the account id
*/
public String getAccountId() {
@@ -105,7 +105,7 @@ public String getAccountId() {
}
/**
- * Set the account id of the isssuer.
+ * Set the account id of the issuer.
* @param accountId the account id to set.
* @return the Issuer object itself.
*/
@@ -115,7 +115,7 @@ public CertificateIssuer setAccountId(String accountId) {
}
/**
- * Get the password of the isssuer.
+ * Get the password of the issuer.
* @return the password
*/
public String getPassword() {
@@ -123,7 +123,7 @@ public String getPassword() {
}
/**
- * Set the password id of the isssuer.
+ * Set the password id of the issuer.
* @param password the password set.
* @return the Issuer object itself.
*/
@@ -133,7 +133,7 @@ public CertificateIssuer setPassword(String password) {
}
/**
- * Get the organization id of the isssuer.
+ * Get the organization id of the issuer.
* @return the organization id
*/
public String getOrganizationId() {
@@ -151,7 +151,7 @@ public CertificateIssuer setOrganizationId(String organizationId) {
}
/**
- * Get the administrators of the isssuer.
+ * Get the administrators of the issuer.
* @return the administrators
*/
public List getAdministratorContacts() {
@@ -159,7 +159,7 @@ public List getAdministratorContacts() {
}
/**
- * Set the administrators of the isssuer.
+ * Set the administrators of the issuer.
* @param administratorContacts the administrators to set.
* @return the Issuer object itself.
*/
@@ -210,7 +210,7 @@ private void unpackCredentials(Map credentials) {
@JsonProperty(value = "org_details")
@SuppressWarnings("unchecked")
- private void unpacOrganizationalDetails(Map orgDetails) {
+ private void unpackOrganizationalDetails(Map orgDetails) {
this.administratorContacts = orgDetails.containsKey("admin_details") ? parseAdministrators((List) orgDetails.get("admin_details")) : null;
this.organizationId = (String) orgDetails.get("id");
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateImportOptions.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/ImportCertificateOptions.java
similarity index 90%
rename from sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateImportOptions.java
rename to sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/ImportCertificateOptions.java
index e7b8c7c9ec9d..95c01c9b864d 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificateImportOptions.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/ImportCertificateOptions.java
@@ -11,7 +11,7 @@
/**
* Represents the configuration used to import a certificate in the key vault.
*/
-public final class CertificateImportOptions {
+public final class ImportCertificateOptions {
/**
* The file location of the certificate.
@@ -49,7 +49,7 @@ public final class CertificateImportOptions {
* @param name The name of the key.
* @param value The PFX or PEM formatted value of the certificate containing both the x509 certificates and the private key.
*/
- public CertificateImportOptions(String name, byte[] value) {
+ public ImportCertificateOptions(String name, byte[] value) {
Objects.requireNonNull(value, "The certificate value parameter cannot be null.");
this.name = name;
this.value = CoreUtils.clone(value);
@@ -60,7 +60,7 @@ public CertificateImportOptions(String name, byte[] value) {
* @param enabled The enabled status to set.
* @return the CertificateImportOptions itself
*/
- public CertificateImportOptions setEnabled(Boolean enabled) {
+ public ImportCertificateOptions setEnabled(Boolean enabled) {
this.enabled = enabled;
return this;
}
@@ -87,7 +87,7 @@ public CertificatePolicy getCertificatePolicy() {
* @param certificatePolicy the management policy for the certificate
* @return the updated CertificateImportOptions itself
*/
- public CertificateImportOptions setCertificatePolicy(CertificatePolicy certificatePolicy) {
+ public ImportCertificateOptions setCertificatePolicy(CertificatePolicy certificatePolicy) {
this.certificatePolicy = certificatePolicy;
return this;
}
@@ -97,7 +97,7 @@ public CertificateImportOptions setCertificatePolicy(CertificatePolicy certifica
* @param tags The metadata to set.
* @return the updated CertificateImportOptions itself
*/
- public CertificateImportOptions setTags(Map tags) {
+ public ImportCertificateOptions setTags(Map tags) {
this.tags = tags;
return this;
}
@@ -116,7 +116,7 @@ public Map getTags() {
* @param password The password used to encrypt the certificate.
* @return the updated CertificateImportOptions itself
*/
- public CertificateImportOptions setPassword(String password) {
+ public ImportCertificateOptions setPassword(String password) {
this.password = password;
return this;
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
index 5b7eccbf77cb..9dd971ab29c9 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
@@ -11,6 +11,7 @@
import com.azure.core.http.policy.HttpLogOptions;
import com.azure.core.http.policy.RetryPolicy;
import com.azure.identity.DefaultAzureCredentialBuilder;
+import com.azure.security.keyvault.certificates.implementation.KeyVaultCredentialPolicy;
import com.azure.security.keyvault.certificates.models.KeyVaultCertificate;
import com.azure.security.keyvault.certificates.models.CertificatePolicy;
import com.azure.security.keyvault.certificates.models.CertificateContact;
@@ -250,27 +251,6 @@ public void getCertificateIssuerCodeSnippets() {
issuerResponse.getValue().getProperties().getProvider());
});
// END: com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuerWithResponse#string
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuer#issuerProperties
- certificateAsyncClient.getIssuer("issuerName")
- .subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(issuer -> certificateAsyncClient.getIssuer(issuer.getProperties())
- .subscribe(issuerResponse -> {
- System.out.printf("Issuer returned with %s and %s", issuerResponse.getName(),
- issuerResponse.getProperties().getProvider());
- }));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuer#issuerProperties
-
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuerWithResponse#issuerProperties
- certificateAsyncClient.getIssuerWithResponse("issuerName")
- .subscriberContext(Context.of(key1, value1, key2, value2))
- .subscribe(issuer -> certificateAsyncClient.getIssuerWithResponse(issuer.getValue().getProperties())
- .subscribe(issuerResponse -> {
- System.out.printf("Issuer returned with %s and %s", issuerResponse.getValue().getName(),
- issuerResponse.getValue().getProperties().getProvider());
- }));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.getIssuerWithResponse#issuerProperties
}
/**
@@ -469,14 +449,14 @@ public void purgeDeletedCertificateWithResponseCodeSnippets() {
*/
public void recoverDeletedCertificateCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginrecoverDeletedCertificate#string
+ // BEGIN: com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginRecoverDeletedCertificate#string
certificateAsyncClient.beginRecoverDeletedCertificate("deletedCertificateName")
.subscribe(pollResponse -> {
System.out.println("Recovery Status: " + pollResponse.getStatus().toString());
System.out.println("Recover Certificate Name: " + pollResponse.getValue().getName());
System.out.println("Recover Certificate Id: " + pollResponse.getValue().getId());
});
- // END: com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginrecoverDeletedCertificate#string
+ // END: com.azure.security.certificatevault.certificates.CertificateAsyncClient.beginRecoverDeletedCertificate#string
}
/**
@@ -542,13 +522,13 @@ public void listCertificatesCodeSnippets() {
*/
public void listCertificateIssuersCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.listIssuers
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.listPropertiesOfIssuers
certificateAsyncClient.listPropertiesOfIssuers()
.subscriberContext(Context.of(key1, value1, key2, value2))
.subscribe(issuerProperties -> certificateAsyncClient.getIssuer(issuerProperties.getName())
.subscribe(issuerResponse -> System.out.printf("Received issuer with name %s and provider %s",
issuerResponse.getName(), issuerResponse.getProperties().getProvider())));
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listIssuers
+ // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.listPropertiesOfIssuers
}
/**
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index e341d8e67630..558185124e30 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -200,24 +200,6 @@ public void getCertificateIssuerCodeSnippets() {
System.out.printf("Retrieved issuer with name %s and prodier %s", issuerResponse.getValue().getName(),
issuerResponse.getValue().getProperties().getProvider());
// END: com.azure.security.keyvault.certificates.CertificateClient.getIssuerWithResponse#string-context
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.getIssuer#issuerProperties
- for (IssuerProperties issuer : certificateClient.listPropertiesOfIssuers()) {
- CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer);
- System.out.printf("Received issuer with name %s and provider %s", retrievedIssuer.getName(),
- retrievedIssuer.getProperties().getProvider());
- }
- // END: com.azure.security.keyvault.certificates.CertificateClient.getIssuer#issuerProperties
-
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.getIssuerWithResponse#issuerProperties-context
- for (IssuerProperties issuer : certificateClient.listPropertiesOfIssuers()) {
- Response retrievedIssuerResponse = certificateClient.getIssuerWithResponse(issuer,
- new Context(key1, value1));
- System.out.printf("Received issuer with name %s and provider %s",
- retrievedIssuerResponse.getValue().getName(),
- retrievedIssuerResponse.getValue().getProperties().getProvider());
- }
- // END: com.azure.security.keyvault.certificates.CertificateClient.getIssuerWithResponse#issuerProperties-context
}
/**
@@ -384,7 +366,7 @@ public void purgeDeletedCertificateWithResponseCodeSnippets() {
*/
public void recoverDeletedCertificateCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.certificatevault.certificates.CertificateClient.beginrecoverDeletedCertificate#string
+ // BEGIN: com.azure.security.certificatevault.certificates.CertificateClient.beginRecoverDeletedCertificate#string
SyncPoller recoverCertPoller = certificateClient
.beginRecoverDeletedCertificate("deletedCertificateName");
// Recovered certificate is accessible as soon as polling beings
@@ -392,7 +374,7 @@ public void recoverDeletedCertificateCodeSnippets() {
System.out.printf(" Recovered Deleted certificate with name %s and id %s", pollResponse.getValue()
.getProperties().getName(), pollResponse.getValue().getProperties().getId());
recoverCertPoller.waitForCompletion();
- // END: com.azure.security.certificatevault.certificates.CertificateClient.beginrecoverDeletedCertificate#string
+ // END: com.azure.security.certificatevault.certificates.CertificateClient.beginRecoverDeletedCertificate#string
}
/**
@@ -467,21 +449,21 @@ public void listCertificatesCodeSnippets() {
*/
public void listCertificateIssuersCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listIssuers
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers
for (IssuerProperties issuer : certificateClient.listPropertiesOfIssuers()) {
CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer.getName());
System.out.printf("Received issuer with name %s and provider %s", retrievedIssuer.getName(),
retrievedIssuer.getProperties().getProvider());
}
- // END: com.azure.security.keyvault.certificates.CertificateClient.listIssuers
+ // END: com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listIssuers#context
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers#context
for (IssuerProperties issuer : certificateClient.listPropertiesOfIssuers(new Context(key1, value1))) {
- CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer);
+ CertificateIssuer retrievedIssuer = certificateClient.getIssuer(issuer.getName());
System.out.printf("Received issuer with name %s and provider %s", retrievedIssuer.getName(),
retrievedIssuer.getProperties().getProvider());
}
- // END: com.azure.security.keyvault.certificates.CertificateClient.listIssuers#context
+ // END: com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers#context
}
/**
From 18e1e9ab8cce1d80d774863346f3535524e8c3dc Mon Sep 17 00:00:00 2001
From: vinay
Date: Tue, 19 Nov 2019 18:38:09 +0000
Subject: [PATCH 6/9] compile fix
---
.../security/keyvault/certificates/ListOperationsAsync.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
index a279d4029b41..f488c5a7bb24 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
@@ -92,7 +92,7 @@ public static void main(String[] args) throws InterruptedException {
//Let's list all certificate issuers in the key vault.
certificateAsyncClient.listPropertiesOfIssuers()
- .subscribe(issuerBase -> certificateAsyncClient.getIssuer(issuerBase)
+ .subscribe(issuerProperties -> certificateAsyncClient.getIssuer(issuerProperties.getName())
.subscribe(issuerResponse -> System.out.printf("Received issuer with name %s and provider %s\n",
issuerResponse.getName(), issuerResponse.getProperties().getProvider())));
From 3799f45c5fd082c22502dbfa92bd1f7e5fee5d8c Mon Sep 17 00:00:00 2001
From: vinay
Date: Tue, 19 Nov 2019 23:39:15 +0000
Subject: [PATCH 7/9] feedback update + sans update + checkstyle fixes
---
.../checkstyle/checkstyle-suppressions.xml | 1 +
.../README.md | 6 +-
.../certificates/CertificateAsyncClient.java | 32 ++++-----
.../certificates/CertificateClient.java | 31 ++++++---
.../models/AdministratorContact.java | 2 +-
.../models/CertificatePolicy.java | 13 ++++
.../models/SubjectAlternativeNames.java | 66 +++++++------------
.../BackupAndRestoreOperations.java | 2 +-
.../BackupAndRestoreOperationsAsync.java | 2 +-
...ificateAsyncClientJavaDocCodeSnippets.java | 4 +-
.../CertificateClientJavaDocCodeSnippets.java | 10 +--
.../keyvault/certificates/HelloWorld.java | 2 +-
.../certificates/HelloWorldAsync.java | 2 +-
.../keyvault/certificates/ListOperations.java | 2 +-
.../certificates/ListOperationsAsync.java | 2 +-
.../ManagingDeletedCertificates.java | 2 +-
.../ManagingDeletedCertificatesAsync.java | 2 +-
17 files changed, 93 insertions(+), 88 deletions(-)
diff --git a/eng/code-quality-reports/src/main/resources/checkstyle/checkstyle-suppressions.xml b/eng/code-quality-reports/src/main/resources/checkstyle/checkstyle-suppressions.xml
index 10ad8f29d024..6d3061ed33f9 100755
--- a/eng/code-quality-reports/src/main/resources/checkstyle/checkstyle-suppressions.xml
+++ b/eng/code-quality-reports/src/main/resources/checkstyle/checkstyle-suppressions.xml
@@ -235,6 +235,7 @@
+
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/README.md b/sdk/keyvault/azure-security-keyvault-certificates/README.md
index 63c51a09bc0a..738aa35b48bb 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/README.md
+++ b/sdk/keyvault/azure-security-keyvault-certificates/README.md
@@ -217,13 +217,13 @@ System.out.printf("Updated Certificate with name %s and enabled status %s", upda
Delete an existing Certificate by calling `beginDeleteCertificate`.
```Java
-SyncPoller deletedCertificatePoller =
+SyncPoller deleteCertificatePoller =
certificateClient.beginDeleteCertificate("certificateName");
// Deleted Certificate is accessible as soon as polling beings.
-PollResponse pollResponse = deletedCertificatePoller.poll();
+PollResponse pollResponse = deleteCertificatePoller.poll();
System.out.printf("Deleted certitifcate with name %s and recovery id %s", pollResponse.getValue().getName(),
pollResponse.getValue().getRecoveryId());
-deletedCertificatePoller.waitForCompletion();
+deleteCertificatePoller.waitForCompletion();
```
### List Certificates
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
index b68f5bdd17c6..ec4d72c69b31 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
@@ -226,7 +226,7 @@ Mono> createCertificateWithResponse(String name,
*/
public PollerFlux getCertificateOperation(String name) {
return new PollerFlux<>(Duration.ofSeconds(1),
- null,
+ (pollingContext) -> Mono.empty(),
createPollOperation(name),
cancelOperation(name),
fetchResultOperation(name));
@@ -1644,14 +1644,14 @@ Mono> cancelCertificateOperationWithResponse(Stri
* Imports a pre-existing certificate to the key vault. The specified certificate must be in PFX or PEM format,
* and must contain the private key as well as the x509 certificates. This operation requires the {@code certificates/import} permission.
*
- * @param importOptions The details of the certificate to import to the key vault
- * @throws HttpRequestException when the {@code importOptions} are invalid.
+ * @param importCertificateOptions The details of the certificate to import to the key vault
+ * @throws HttpRequestException when the {@code importCertificateOptions} are invalid.
* @return A {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate imported certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Mono importCertificate(ImportCertificateOptions importOptions) {
+ public Mono importCertificate(ImportCertificateOptions importCertificateOptions) {
try {
- return withContext(context -> importCertificateWithResponse(importOptions, context)).flatMap(FluxUtil::toMono);
+ return withContext(context -> importCertificateWithResponse(importCertificateOptions, context)).flatMap(FluxUtil::toMono);
} catch (RuntimeException ex) {
return monoError(logger, ex);
}
@@ -1661,28 +1661,28 @@ public Mono importCertificate(ImportCertificateOptions impo
* Imports a pre-existing certificate to the key vault. The specified certificate must be in PFX or PEM format,
* and must contain the private key as well as the x509 certificates. This operation requires the {@code certificates/import} permission.
*
- * @param importOptions The details of the certificate to import to the key vault
- * @throws HttpRequestException when the {@code importOptions} are invalid.
+ * @param importCertificateOptions The details of the certificate to import to the key vault
+ * @throws HttpRequestException when the {@code importCertificateOptions} are invalid.
* @return A {@link Mono} containing a {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate imported certificate}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public Mono> importCertificateWithResponse(ImportCertificateOptions importOptions) {
+ public Mono> importCertificateWithResponse(ImportCertificateOptions importCertificateOptions) {
try {
- return withContext(context -> importCertificateWithResponse(importOptions, context));
+ return withContext(context -> importCertificateWithResponse(importCertificateOptions, context));
} catch (RuntimeException ex) {
return monoError(logger, ex);
}
}
- Mono> importCertificateWithResponse(ImportCertificateOptions importOptions, Context context) {
+ Mono> importCertificateWithResponse(ImportCertificateOptions importCertificateOptions, Context context) {
CertificateImportParameters parameters = new CertificateImportParameters()
- .base64EncodedCertificate(Base64Url.encode(importOptions.getValue()).toString())
- .certificateAttributes(new CertificateRequestAttributes(importOptions))
- .certificatePolicy(importOptions.getCertificatePolicy())
- .password(importOptions.getPassword())
- .tags(importOptions.getTags());
+ .base64EncodedCertificate(Base64Url.encode(importCertificateOptions.getValue()).toString())
+ .certificateAttributes(new CertificateRequestAttributes(importCertificateOptions))
+ .certificatePolicy(importCertificateOptions.getCertificatePolicy())
+ .password(importCertificateOptions.getPassword())
+ .tags(importCertificateOptions.getTags());
- return service.importCertificate(vaultUrl, importOptions.getName(), API_VERSION, ACCEPT_LANGUAGE, parameters,
+ return service.importCertificate(vaultUrl, importCertificateOptions.getName(), API_VERSION, ACCEPT_LANGUAGE, parameters,
CONTENT_TYPE_HEADER_VALUE, context);
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index 9a887e04d829..c1e700cd8340 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -13,7 +13,18 @@
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
-import com.azure.security.keyvault.certificates.models.*;
+import com.azure.security.keyvault.certificates.models.CertificateOperation;
+import com.azure.security.keyvault.certificates.models.CertificatePolicy;
+import com.azure.security.keyvault.certificates.models.DeletedCertificate;
+import com.azure.security.keyvault.certificates.models.CertificateContact;
+import com.azure.security.keyvault.certificates.models.CertificateIssuer;
+import com.azure.security.keyvault.certificates.models.IssuerProperties;
+import com.azure.security.keyvault.certificates.models.MergeCertificateOptions;
+import com.azure.security.keyvault.certificates.models.CertificateProperties;
+import com.azure.security.keyvault.certificates.models.KeyVaultCertificate;
+import com.azure.security.keyvault.certificates.models.KeyVaultCertificateWithPolicy;
+import com.azure.security.keyvault.certificates.models.CertificatePolicyAction;
+import com.azure.security.keyvault.certificates.models.LifeTimeAction;
import com.azure.security.keyvault.certificates.models.ImportCertificateOptions;
import java.util.List;
@@ -798,7 +809,7 @@ public CertificateIssuer deleteIssuer(String name) {
* call {@link CertificateClient#getIssuer(String)} . This will return the {@link CertificateIssuer issuer}
* with all its properties..
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listIssuers}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.listPropertiesOfIssuers}
*
* @return A {@link PagedIterable} containing all of the {@link IssuerProperties certificate issuers} in the vault.
*/
@@ -1058,24 +1069,24 @@ public Response mergeCertificateWithResponse(MergeCertifica
* Imports a pre-existing certificate to the key vault. The specified certificate must be in PFX or PEM format,
* and must contain the private key as well as the x509 certificates. This operation requires the {@code certificates/import} permission.
*
- * @param importOptions The details of the certificate to import to the key vault
- * @throws HttpRequestException when the {@code importOptions} are invalid.
+ * @param importCertificateOptions The details of the certificate to import to the key vault
+ * @throws HttpRequestException when the {@code importCertificateOptions} are invalid.
* @return the {@link KeyVaultCertificate imported certificate}.
*/
- public KeyVaultCertificate importCertificate(ImportCertificateOptions importOptions) {
- return importCertificateWithResponse(importOptions, Context.NONE).getValue();
+ public KeyVaultCertificate importCertificate(ImportCertificateOptions importCertificateOptions) {
+ return importCertificateWithResponse(importCertificateOptions, Context.NONE).getValue();
}
/**
* Imports a pre-existing certificate to the key vault. The specified certificate must be in PFX or PEM format,
* and must contain the private key as well as the x509 certificates. This operation requires the {@code certificates/import} permission.
*
- * @param importOptions The details of the certificate to import to the key vault
+ * @param importCertificateOptions The details of the certificate to import to the key vault
* @param context Additional context that is passed through the Http pipeline during the service call.
- * @throws HttpRequestException when the {@code importOptions} are invalid.
+ * @throws HttpRequestException when the {@code importCertificateOptions} are invalid.
* @return A {@link Response} whose {@link Response#getValue() value} contains the {@link KeyVaultCertificate imported certificate}.
*/
- public Response importCertificateWithResponse(ImportCertificateOptions importOptions, Context context) {
- return client.importCertificateWithResponse(importOptions, context).block();
+ public Response importCertificateWithResponse(ImportCertificateOptions importCertificateOptions, Context context) {
+ return client.importCertificateWithResponse(importCertificateOptions, context).block();
}
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
index 13813951cb67..394fe695b7aa 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/AdministratorContact.java
@@ -50,7 +50,7 @@ public AdministratorContact(String firstName, String lastName, String email) {
* @param firstName the firstName of the admin.
* @param lastName the last name of the admin.
* @param email the email of the admin.
- * @param phone tne contact info of the admin.
+ * @param phone the contact info of the admin.
*/
public AdministratorContact(String firstName, String lastName, String email, String phone) {
this.firstName = firstName;
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
index 175c88cf9f5c..54f19d1440c4 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/CertificatePolicy.java
@@ -148,6 +148,19 @@ public CertificatePolicy(String issuerName, SubjectAlternativeNames subjectAlter
this.subjectAlternativeNames = subjectAlternativeNames;
}
+ /**
+ * Creates certificate policy.
+ * @param issuerName The issuer name to set.
+ * @param subjectName The subject name to set.
+ * @param subjectAlternativeNames The subject alternative names to set.
+ */
+ public CertificatePolicy(String issuerName, String subjectName, SubjectAlternativeNames subjectAlternativeNames) {
+ this.issuerName = issuerName;
+ this.subjectName = subjectName;
+ this.subjectAlternativeNames = subjectAlternativeNames;
+ }
+
+
CertificatePolicy() {
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/SubjectAlternativeNames.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/SubjectAlternativeNames.java
index 2656c86ea2f1..18524c49b2b4 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/SubjectAlternativeNames.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/models/SubjectAlternativeNames.java
@@ -27,7 +27,12 @@ public final class SubjectAlternativeNames {
* User principal names.
*/
@JsonProperty(value = "upns")
- private List upns;
+ private List userPrincipalNames;
+
+ /**
+ * Create an instance of SubjectAlternativeNames
+ */
+ public SubjectAlternativeNames() { }
/**
* Get the emails.
@@ -38,36 +43,15 @@ public List getEmails() {
return this.emails;
}
- /*
- * Constructor to setup the SubjectAlternativeNames
- * @param sans the subject alternative names content
- * @param sansType the type of the content.
- */
- SubjectAlternativeNames(List sans, SubjectAlternativeNamesType sansType) {
- switch (sansType) {
- case EMAILS:
- this.emails = sans;
- break;
- case DNS_NAMES:
- this.dnsNames = sans;
- break;
- case UPNS:
- this.upns = sans;
- break;
- default:
- //should never reach here
- return;
- }
- }
-
/**
- * Create Subject Alternative names with emails.
+ * Set the emails.
*
* @param emails the emails to set
- * @return the SubjectAlternativeNames.
+ * @return the updated SubjectAlternativeNames object itself.
*/
- public static SubjectAlternativeNames fromEmails(List emails) {
- return new SubjectAlternativeNames(emails, SubjectAlternativeNamesType.EMAILS);
+ public SubjectAlternativeNames setEmails(List emails) {
+ this.emails = emails;
+ return this;
}
/**
@@ -80,13 +64,14 @@ public List getDnsNames() {
}
/**
- * Create Subject Alternative names with dns names.
+ * Set the dns names.
*
* @param dnsNames the dns names to set
- * @return the SubjectAlternativeNames.
+ * @return the updated SubjectAlternativeNames object itself.
*/
- public static SubjectAlternativeNames fromDnsNames(List dnsNames) {
- return new SubjectAlternativeNames(dnsNames, SubjectAlternativeNamesType.DNS_NAMES);
+ public SubjectAlternativeNames setDnsNames(List dnsNames) {
+ this.dnsNames = dnsNames;
+ return this;
}
/**
@@ -95,22 +80,17 @@ public static SubjectAlternativeNames fromDnsNames(List dnsNames) {
* @return the list of User Principal Names
*/
public List getUserPrincipalNames() {
- return this.upns;
+ return this.userPrincipalNames;
}
/**
- * Create Subject Alternative names with User Principal names.
+ * Set the User Principal Names.
*
- * @param upns the user principal names value to set
- * @return the SubjectAlternativeNames.
+ * @param userPrincipalNames the user principal names to set
+ * @return the updated SubjectAlternativeNames object itself.
*/
- public static SubjectAlternativeNames fromUserPrincipalNames(List upns) {
- return new SubjectAlternativeNames(upns, SubjectAlternativeNamesType.UPNS);
- }
-
- private enum SubjectAlternativeNamesType {
- EMAILS,
- DNS_NAMES,
- UPNS;
+ public SubjectAlternativeNames setUserPrincipalNames(List userPrincipalNames) {
+ this.userPrincipalNames = userPrincipalNames;
+ return this;
}
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
index 8f67275e5af4..878042f6d6ca 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
@@ -49,7 +49,7 @@ public static void main(String[] args) throws IOException, InterruptedException,
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyCurveName(CertificateKeyCurveName.P_256);
Map tags = new HashMap<>();
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperationsAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperationsAsync.java
index 0b94528bf16e..e200cda7e909 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperationsAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperationsAsync.java
@@ -43,7 +43,7 @@ public static void main(String[] args) throws IOException, InterruptedException,
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyCurveName(CertificateKeyCurveName.P_256);
Map tags = new HashMap<>();
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
index 9dd971ab29c9..9df2abce433c 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
@@ -368,14 +368,14 @@ public void updateCertificateWithResponseCodeSnippets() {
*/
public void deleteCertificateCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.begindeleteCertificate#string
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginDeleteCertificate#string
certificateAsyncClient.beginDeleteCertificate("certificateName")
.subscribe(pollResponse -> {
System.out.println("Delete Status: " + pollResponse.getStatus().toString());
System.out.println("Delete Certificate Name: " + pollResponse.getValue().getName());
System.out.println("Certificate Delete Date: " + pollResponse.getValue().getDeletedOn().toString());
});
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.begindeleteCertificate#string
+ // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginDeleteCertificate#string
}
/**
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index 558185124e30..b46573d7d4dc 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -287,15 +287,15 @@ public void updateCertificatePolicyCodeSnippets() {
*/
public void deleteCertificateCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.begindeleteCertificate#string
- SyncPoller deletedCertificatePoller =
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginDeleteCertificate#string
+ SyncPoller deleteCertificatePoller =
certificateClient.beginDeleteCertificate("certificateName");
// Deleted Certificate is accessible as soon as polling beings.
- PollResponse pollResponse = deletedCertificatePoller.poll();
+ PollResponse pollResponse = deleteCertificatePoller.poll();
System.out.printf("Deleted certitifcate with name %s and recovery id %s", pollResponse.getValue().getName(),
pollResponse.getValue().getRecoveryId());
- deletedCertificatePoller.waitForCompletion();
- // END: com.azure.security.keyvault.certificates.CertificateClient.begindeleteCertificate#string
+ deleteCertificatePoller.waitForCompletion();
+ // END: com.azure.security.keyvault.certificates.CertificateClient.beginDeleteCertificate#string
}
/**
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
index 174713d7d580..4311ffda9b49 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
@@ -45,7 +45,7 @@ public static void main(String[] args) throws InterruptedException, IllegalArgum
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyType(CertificateKeyType.EC)
.setKeyCurveName(CertificateKeyCurveName.P_256)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorldAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorldAsync.java
index 2c98ea8fa818..799739929f61 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorldAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorldAsync.java
@@ -38,7 +38,7 @@ public static void main(String[] args) throws InterruptedException {
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyType(CertificateKeyType.EC)
.setKeyCurveName(CertificateKeyCurveName.P_256);
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
index 206efd0370e1..e57b31af3a45 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
@@ -81,7 +81,7 @@ public static void main(String[] args) throws IllegalArgumentException {
//Let's list all certificate issuers in the key vault.
for (IssuerProperties certIssuer : certificateClient.listPropertiesOfIssuers()) {
- CertificateIssuer retrievedIssuer = certificateClient.getIssuer(certIssuer);
+ CertificateIssuer retrievedIssuer = certificateClient.getIssuer(certIssuer.getName());
System.out.printf("Received issuer with name %s and provider %s", retrievedIssuer.getName(),
retrievedIssuer.getProperties().getProvider());
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
index f488c5a7bb24..37637ab8c09b 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperationsAsync.java
@@ -37,7 +37,7 @@ public static void main(String[] args) throws InterruptedException {
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyCurveName(CertificateKeyCurveName.P_256);
Map tags = new HashMap<>();
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
index da7a9dfa2c96..a632c97a9987 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
@@ -46,7 +46,7 @@ public static void main(String[] args) throws IllegalArgumentException, Interrup
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyCurveName(CertificateKeyCurveName.P_256);
Map tags = new HashMap<>();
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificatesAsync.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificatesAsync.java
index 2db5446a4727..000016a16593 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificatesAsync.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificatesAsync.java
@@ -40,7 +40,7 @@ public static void main(String[] args) throws InterruptedException {
// Let's create a self signed certificate valid for 1 year. if the certificate
// already exists in the key vault, then a new version of the certificate is created.
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12")
- .setSubjectAlternativeNames(SubjectAlternativeNames.fromEmails(Arrays.asList("wow@gmail.com")))
+ .setSubjectAlternativeNames(new SubjectAlternativeNames().setEmails(Arrays.asList("wow@gmail.com")))
.setReuseKey(true)
.setKeyCurveName(CertificateKeyCurveName.P_256);
Map tags = new HashMap<>();
From c1bdc449901ed96984514e0ae7f1341c71fbf140 Mon Sep 17 00:00:00 2001
From: vinay
Date: Tue, 26 Nov 2019 18:28:13 +0000
Subject: [PATCH 8/9] feedback updates
---
.../README.md | 4 ++--
.../certificates/CertificateAsyncClient.java | 10 ++++++---
.../certificates/CertificateClient.java | 11 ++++++----
.../BackupAndRestoreOperations.java | 2 +-
...ificateAsyncClientJavaDocCodeSnippets.java | 21 +++++++++++++++----
.../CertificateClientJavaDocCodeSnippets.java | 21 +++++++++++++++----
.../keyvault/certificates/HelloWorld.java | 4 ++--
.../keyvault/certificates/ListOperations.java | 4 ++--
.../ManagingDeletedCertificates.java | 2 +-
9 files changed, 56 insertions(+), 23 deletions(-)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/README.md b/sdk/keyvault/azure-security-keyvault-certificates/README.md
index 738aa35b48bb..4dec6f401abb 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/README.md
+++ b/sdk/keyvault/azure-security-keyvault-certificates/README.md
@@ -233,7 +233,7 @@ List the certificates in the key vault by calling `listPropertiesOfCertificates`
```java
// List operations don't return the certificates with their full information. So, for each returned certificate we call getCertificate to get the certificate with all its properties excluding the policy.
for (CertificateProperties certificateProperties : certificateClient.listPropertiesOfCertificates()) {
- KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificateProperties);
+ KeyVaultCertificate certificateWithAllProperties = certificateClient.getCertificate(certificateProperties.getName(), certificateProperties.getVersion());
System.out.printf("Received certificate with name %s and secret id %s", certificateWithAllProperties.getName(),
certificateWithAllProperties.getSecretId());
}
@@ -323,7 +323,7 @@ List the certificates in the key vault by calling `listPropertiesOfCertificates`
```Java
// The List Certificates operation returns certificates without their full properties, so for each certificate returned we call `getCertificate` to get all its attributes excluding the policy.
certificateAsyncClient.listPropertiesOfCertificates()
- .subscribe(certificateProperties -> certificateAsyncClient.getCertificate(certificateProperties)
+ .subscribe(certificateProperties -> certificateAsyncClient.getCertificate(certificateProperties.getName(), certificateProperties.getVersion());
.subscribe(certificateResponse -> System.out.printf("Received certificate with name %s and key id %s",
certificateResponse.getName(), certificateResponse.getKeyId())));
```
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
index ec4d72c69b31..e28ea5364549 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
@@ -74,6 +74,7 @@ public class CertificateAsyncClient {
static final String ACCEPT_LANGUAGE = "en-US";
static final int DEFAULT_MAX_PAGE_RESULTS = 25;
static final String CONTENT_TYPE_HEADER_VALUE = "application/json";
+ static final String KEY_VAULT_SCOPE = "https://vault.azure.net/.default";
private final String vaultUrl;
private final CertificateService service;
private final ClientLogger logger = new ClientLogger(CertificateAsyncClient.class);
@@ -107,7 +108,7 @@ public String getVaultUrl() {
*
Create certificate is a long running operation. The {@link PollerFlux poller} allows users to automatically poll on the create certificate
* operation status. It is possible to monitor each intermediate poll response during the poll operation.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy-Boolean-Map}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map}
*
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
@@ -158,7 +159,7 @@ Mono> fetchResultOperation(String name) {
*
Create certificate is a long running operation. The {@link PollerFlux poller} allows users to automatically poll on the create certificate
* operation status. It is possible to monitor each intermediate poll response during the poll operation.
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy}
*
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
@@ -198,6 +199,7 @@ private Mono> processCertificateOperationResp
status = LongRunningOperationStatus.FAILED;
break;
default:
+ status = LongRunningOperationStatus.fromString(certificateOperationResponse.getValue().getStatus());
//should not reach here
break;
}
@@ -217,9 +219,11 @@ Mono> createCertificateWithResponse(String name,
* Gets a pending {@link CertificateOperation} from the key vault. This operation requires the certificates/get permission.
*
*
Code Samples
- *
Geta a pending certificate operation. The {@link PollerFlux poller} allows users to automatically poll on the certificate
+ *
Get a pending certificate operation. The {@link PollerFlux poller} allows users to automatically poll on the certificate
* operation status. It is possible to monitor each intermediate poll response during the poll operation.
*
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateAsyncClient.getCertificateOperation#String}
+ *
* @param name The name of the certificate.
* @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist.
* @return A {@link PollerFlux} polling on the certificate operation status.
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index c1e700cd8340..fcdd0e1a30e9 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -79,17 +79,18 @@ public String getVaultUrl() {
*
Create certificate is a long running operation. The createCertificate indefinitely waits for the operation to complete and
* returns its last status. The details of the last certificate operation status are printed when a response is received
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy-Map}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map}
*
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
+ * @param isEnabled The enabled status of the certificate.
* @param tags The application specific metadata to set.
* @throws ResourceModifiedException when invalid certificate policy configuration is provided.
* @return A {@link SyncPoller} to poll on the create certificate operation status.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- public SyncPoller beginCreateCertificate(String name, CertificatePolicy policy, Map tags) {
- return client.beginCreateCertificate(name, policy, true, tags).getSyncPoller();
+ public SyncPoller beginCreateCertificate(String name, CertificatePolicy policy, Boolean isEnabled, Map tags) {
+ return client.beginCreateCertificate(name, policy, isEnabled, tags).getSyncPoller();
}
/**
@@ -100,7 +101,7 @@ public SyncPoller beginCreateCertific
*
Create certificate is a long running operation. The createCertificate indefinitely waits for the operation to complete and
* returns its last status. The details of the last certificate operation status are printed when a response is received
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy}
*
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
@@ -119,6 +120,8 @@ public SyncPoller beginCreateCertific
*
Geta a pending certificate operation. The {@link SyncPoller poller} allows users to automatically poll on the certificate
* operation status.
*
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.getCertificateOperation#String}
+ *
* @param name The name of the certificate.
* @throws ResourceNotFoundException when a certificate operation for a certificate with {@code name} doesn't exist.
* @return A {@link SyncPoller} to poll on the certificate operation status.
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
index 878042f6d6ca..45636dfa066b 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/BackupAndRestoreOperations.java
@@ -55,7 +55,7 @@ public static void main(String[] args) throws IOException, InterruptedException,
Map tags = new HashMap<>();
tags.put("foo", "bar");
- SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName", policy, tags);
+ SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName", policy, true, tags);
certificatePoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certificatePoller.getFinalResult();
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
index 9df2abce433c..e2ebafb4cadf 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateAsyncClientJavaDocCodeSnippets.java
@@ -165,7 +165,7 @@ public void getCertificateWithResponseCodeSnippets() {
*/
public void createCertificateCodeSnippets() {
CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy-Boolean-Map
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map
CertificatePolicy policy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12");
Map tags = new HashMap<>();
tags.put("foo", "bar");
@@ -176,9 +176,9 @@ public void createCertificateCodeSnippets() {
System.out.println(pollResponse.getValue().getStatus());
System.out.println(pollResponse.getValue().getStatusDetails());
});
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy-Boolean-Map
+ // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map
- // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy
CertificatePolicy certPolicy = new CertificatePolicy("Self", "CN=SelfSignedJavaPkcs12");
certificateAsyncClient.beginCreateCertificate("certificateName", certPolicy)
.subscribe(pollResponse -> {
@@ -187,7 +187,20 @@ public void createCertificateCodeSnippets() {
System.out.println(pollResponse.getValue().getStatus());
System.out.println(pollResponse.getValue().getStatusDetails());
});
- // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.createCertificate#String-CertificatePolicy
+ // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.beginCreateCertificate#String-CertificatePolicy
+ }
+
+ public void getCertificateOperation() {
+ CertificateAsyncClient certificateAsyncClient = getCertificateAsyncClient();
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateAsyncClient.getCertificateOperation#String
+ certificateAsyncClient.getCertificateOperation("certificateName")
+ .subscribe(pollResponse -> {
+ System.out.println("---------------------------------------------------------------------------------");
+ System.out.println(pollResponse.getStatus());
+ System.out.println(pollResponse.getValue().getStatus());
+ System.out.println(pollResponse.getValue().getStatusDetails());
+ });
+ // END: com.azure.security.keyvault.certificates.CertificateAsyncClient.getCertificateOperation#String
}
/**
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index b46573d7d4dc..4f4921dc9fb0 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -129,7 +129,7 @@ public void getCertificateWithResponseCodeSnippets() {
*/
public void createCertificateCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy-Map
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map
CertificatePolicy certificatePolicyPkcsSelf = new CertificatePolicy("Self",
"CN=SelfSignedJavaPkcs12");
SyncPoller certPoller = certificateClient
@@ -137,9 +137,9 @@ public void createCertificateCodeSnippets() {
certPoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certPoller.getFinalResult();
System.out.printf("Certificate created with name %s", cert.getName());
- // END: com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy-Map
+ // END: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy
CertificatePolicy certificatePolicy = new CertificatePolicy("Self",
"CN=SelfSignedJavaPkcs12");
SyncPoller certificatePoller = certificateClient
@@ -147,9 +147,22 @@ public void createCertificateCodeSnippets() {
certificatePoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate certificate = certificatePoller.getFinalResult();
System.out.printf("Certificate created with name %s", certificate.getName());
- // END: com.azure.security.keyvault.certificates.CertificateClient.createCertificate#String-CertificatePolicy
+ // END: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy
}
+ public void getCertificateOperation() {
+ CertificateClient certificateClient = getCertificateClient();
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.getCertificateOperation#String
+ SyncPoller certPoller = certificateClient
+ .getCertificateOperation("certificateName");
+ certPoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
+ KeyVaultCertificate cert = certPoller.getFinalResult();
+ System.out.printf("Certificate created with name %s", cert.getName());
+ // END: com.azure.security.keyvault.certificates.CertificateClient.getCertificateOperation#String
+
+ }
+
+
/**
* Method to insert code snippets for {@link CertificateClient#createIssuer(String, String)}
*/
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
index 4311ffda9b49..73e1d9860b05 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/HelloWorld.java
@@ -53,7 +53,7 @@ public static void main(String[] args) throws InterruptedException, IllegalArgum
Map tags = new HashMap<>();
tags.put("foo", "bar");
- SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName92", policy, tags);
+ SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName92", policy, true, tags);
certificatePoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certificatePoller.getFinalResult();
@@ -82,7 +82,7 @@ public static void main(String[] args) throws InterruptedException, IllegalArgum
//Let's create a certificate signed by our issuer.
certificateClient.beginCreateCertificate("myCertificate",
- new CertificatePolicy("myIssuer", "CN=SelfSignedJavaPkcs12"), tags)
+ new CertificatePolicy("myIssuer", "CN=SelfSignedJavaPkcs12"), true, tags)
.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
// Let's Get the latest version of our certificate from the key vault.
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
index e57b31af3a45..d427dc934e55 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ListOperations.java
@@ -44,7 +44,7 @@ public static void main(String[] args) throws IllegalArgumentException {
Map tags = new HashMap<>();
tags.put("foo", "bar");
- SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certName", policy, tags);
+ SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certName", policy, true, tags);
certificatePoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certificatePoller.getFinalResult();
@@ -57,7 +57,7 @@ public static void main(String[] args) throws IllegalArgumentException {
//Let's create a certificate signed by our issuer.
certificateClient.beginCreateCertificate("myCertificate",
- new CertificatePolicy("myIssuer", "CN=SignedJavaPkcs12"), tags)
+ new CertificatePolicy("myIssuer", "CN=SignedJavaPkcs12"), true, tags)
.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
index a632c97a9987..fc6a9084d5d4 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/ManagingDeletedCertificates.java
@@ -52,7 +52,7 @@ public static void main(String[] args) throws IllegalArgumentException, Interrup
Map tags = new HashMap<>();
tags.put("foo", "bar");
- SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName", policy, tags);
+ SyncPoller certificatePoller = certificateClient.beginCreateCertificate("certificateName", policy, true, tags);
certificatePoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certificatePoller.getFinalResult();
From 2b17a836556f10f3cc3bf160b5536c26f6eb6e95 Mon Sep 17 00:00:00 2001
From: vinay
Date: Tue, 26 Nov 2019 19:18:32 +0000
Subject: [PATCH 9/9] feedback updates
---
.../keyvault/certificates/CertificateAsyncClient.java | 2 +-
.../security/keyvault/certificates/CertificateClient.java | 2 +-
.../certificates/CertificateClientJavaDocCodeSnippets.java | 6 +++---
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
index e28ea5364549..6ab2eba3df67 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateAsyncClient.java
@@ -199,7 +199,7 @@ private Mono> processCertificateOperationResp
status = LongRunningOperationStatus.FAILED;
break;
default:
- status = LongRunningOperationStatus.fromString(certificateOperationResponse.getValue().getStatus());
+ status = LongRunningOperationStatus.fromString(certificateOperationResponse.getValue().getStatus(), true);
//should not reach here
break;
}
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
index fcdd0e1a30e9..c69737297bad 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/main/java/com/azure/security/keyvault/certificates/CertificateClient.java
@@ -79,7 +79,7 @@ public String getVaultUrl() {
*
Create certificate is a long running operation. The createCertificate indefinitely waits for the operation to complete and
* returns its last status. The details of the last certificate operation status are printed when a response is received
*
- * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map}
+ * {@codesnippet com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map}
*
* @param name The name of the certificate to be created.
* @param policy The policy of the certificate to be created.
diff --git a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
index 4f4921dc9fb0..5c7d5667e8d4 100644
--- a/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
+++ b/sdk/keyvault/azure-security-keyvault-certificates/src/samples/java/com/azure/security/keyvault/certificates/CertificateClientJavaDocCodeSnippets.java
@@ -129,15 +129,15 @@ public void getCertificateWithResponseCodeSnippets() {
*/
public void createCertificateCodeSnippets() {
CertificateClient certificateClient = getCertificateClient();
- // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map
+ // BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map
CertificatePolicy certificatePolicyPkcsSelf = new CertificatePolicy("Self",
"CN=SelfSignedJavaPkcs12");
SyncPoller certPoller = certificateClient
- .beginCreateCertificate("certificateName", certificatePolicyPkcsSelf);
+ .beginCreateCertificate("certificateName", certificatePolicyPkcsSelf, true, new HashMap<>());
certPoller.waitUntil(LongRunningOperationStatus.SUCCESSFULLY_COMPLETED);
KeyVaultCertificate cert = certPoller.getFinalResult();
System.out.printf("Certificate created with name %s", cert.getName());
- // END: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Map
+ // END: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy-Boolean-Map
// BEGIN: com.azure.security.keyvault.certificates.CertificateClient.beginCreateCertificate#String-CertificatePolicy
CertificatePolicy certificatePolicy = new CertificatePolicy("Self",