Skip to content

Commit fab8069

Browse files
authored
KV v2 logging improvements (#45418)
1 parent 05f7a37 commit fab8069

File tree

48 files changed

+1382
-2009
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1382
-2009
lines changed

sdk/keyvault-v2/azure-security-keyvault-administration/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ Code generated by Microsoft (R) TypeSpec Code Generator.
6060
<dependency>
6161
<groupId>io.clientcore</groupId>
6262
<artifactId>core</artifactId>
63-
<version>1.0.0-beta.9</version> <!-- {x-version-update;io.clientcore:core;dependency} -->
63+
<version>1.0.0-beta.10</version> <!-- {x-version-update;unreleased_io.clientcore:core;dependency} -->
6464
</dependency>
6565
<dependency>
6666
<groupId>com.azure.v2</groupId>

sdk/keyvault-v2/azure-security-keyvault-administration/src/main/java/com/azure/v2/security/keyvault/administration/KeyVaultAccessControlClient.java

Lines changed: 59 additions & 120 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
import java.util.Objects;
2424
import java.util.UUID;
2525

26-
import static com.azure.v2.security.keyvault.administration.KeyVaultAdministrationUtil.CANNOT_BE_NULL;
2726
import static com.azure.v2.security.keyvault.administration.KeyVaultAdministrationUtil.mapPages;
2827
import static com.azure.v2.security.keyvault.administration.KeyVaultAdministrationUtil.mapResponse;
2928
import static com.azure.v2.security.keyvault.administration.KeyVaultAdministrationUtil.roleAssignmentToKeyVaultRoleAssignment;
@@ -279,18 +278,12 @@ public PagedIterable<KeyVaultRoleDefinition> listRoleDefinitions(KeyVaultRoleSco
279278
public PagedIterable<KeyVaultRoleDefinition> listRoleDefinitions(KeyVaultRoleScope roleScope,
280279
RequestContext requestContext) {
281280

282-
try {
283-
Objects.requireNonNull(roleScope, String.format(CANNOT_BE_NULL, "'roleScope'"));
284-
285-
return mapPages(
286-
pagingOptions -> clientImpl.getRoleDefinitions()
287-
.listSinglePage(roleScope.getValue(), null, requestContext),
288-
(pagingOptions, nextLink) -> clientImpl.getRoleDefinitions()
289-
.listNextSinglePage(nextLink, requestContext),
290-
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
291-
} catch (RuntimeException e) {
292-
throw LOGGER.logThrowableAsError(e);
293-
}
281+
Objects.requireNonNull(roleScope, "'roleScope' cannot be null.");
282+
283+
return mapPages(
284+
pagingOptions -> clientImpl.getRoleDefinitions().listSinglePage(roleScope.getValue(), null, requestContext),
285+
(pagingOptions, nextLink) -> clientImpl.getRoleDefinitions().listNextSinglePage(nextLink, requestContext),
286+
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
294287
}
295288

296289
/**
@@ -349,15 +342,11 @@ public KeyVaultRoleDefinition setRoleDefinition(KeyVaultRoleScope roleScope) {
349342
*/
350343
@ServiceMethod(returns = ReturnType.SINGLE)
351344
public KeyVaultRoleDefinition setRoleDefinition(KeyVaultRoleScope roleScope, String roleDefinitionName) {
352-
try {
353-
Objects.requireNonNull(roleScope, String.format(CANNOT_BE_NULL, "'roleScope'"));
354-
355-
return roleDefinitionToKeyVaultRoleDefinition(clientImpl.getRoleDefinitions()
356-
.createOrUpdate(roleScope.toString(),
357-
isNullOrEmpty(roleDefinitionName) ? UUID.randomUUID().toString() : roleDefinitionName, null));
358-
} catch (RuntimeException e) {
359-
throw LOGGER.logThrowableAsError(e);
360-
}
345+
Objects.requireNonNull(roleScope, "'roleScope' cannot be null.");
346+
347+
return roleDefinitionToKeyVaultRoleDefinition(clientImpl.getRoleDefinitions()
348+
.createOrUpdate(roleScope.toString(),
349+
isNullOrEmpty(roleDefinitionName) ? UUID.randomUUID().toString() : roleDefinitionName, null));
361350
}
362351

363352
/**
@@ -423,15 +412,11 @@ public KeyVaultRoleDefinition setRoleDefinition(KeyVaultRoleScope roleScope, Str
423412
public Response<KeyVaultRoleDefinition> setRoleDefinitionWithResponse(SetRoleDefinitionOptions options,
424413
RequestContext requestContext) {
425414

426-
try {
427-
return mapResponse(
428-
clientImpl.getRoleDefinitions()
429-
.createOrUpdateWithResponse(options.getRoleScope().toString(), options.getRoleDefinitionName(),
430-
validateAndGetRoleDefinitionCreateParameters(options), requestContext),
431-
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
432-
} catch (RuntimeException e) {
433-
throw LOGGER.logThrowableAsError(e);
434-
}
415+
return mapResponse(
416+
clientImpl.getRoleDefinitions()
417+
.createOrUpdateWithResponse(options.getRoleScope().toString(), options.getRoleDefinitionName(),
418+
validateAndGetRoleDefinitionCreateParameters(options, LOGGER), requestContext),
419+
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
435420
}
436421

437422
/**
@@ -464,14 +449,10 @@ public Response<KeyVaultRoleDefinition> setRoleDefinitionWithResponse(SetRoleDef
464449
*/
465450
@ServiceMethod(returns = ReturnType.SINGLE)
466451
public KeyVaultRoleDefinition getRoleDefinition(KeyVaultRoleScope roleScope, String roleDefinitionName) {
467-
try {
468-
validateRoleDefinitionParameters(roleScope, roleDefinitionName);
452+
validateRoleDefinitionParameters(roleScope, roleDefinitionName, LOGGER);
469453

470-
return roleDefinitionToKeyVaultRoleDefinition(
471-
clientImpl.getRoleDefinitions().get(roleScope.toString(), roleDefinitionName));
472-
} catch (RuntimeException e) {
473-
throw LOGGER.logThrowableAsError(e);
474-
}
454+
return roleDefinitionToKeyVaultRoleDefinition(
455+
clientImpl.getRoleDefinitions().get(roleScope.toString(), roleDefinitionName));
475456
}
476457

477458
/**
@@ -514,16 +495,11 @@ public KeyVaultRoleDefinition getRoleDefinition(KeyVaultRoleScope roleScope, Str
514495
public Response<KeyVaultRoleDefinition> getRoleDefinitionWithResponse(KeyVaultRoleScope roleScope,
515496
String roleDefinitionName, RequestContext requestContext) {
516497

517-
try {
518-
validateRoleDefinitionParameters(roleScope, roleDefinitionName);
498+
validateRoleDefinitionParameters(roleScope, roleDefinitionName, LOGGER);
519499

520-
return mapResponse(
521-
clientImpl.getRoleDefinitions()
522-
.getWithResponse(roleScope.toString(), roleDefinitionName, requestContext),
523-
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
524-
} catch (RuntimeException e) {
525-
throw LOGGER.logThrowableAsError(e);
526-
}
500+
return mapResponse(
501+
clientImpl.getRoleDefinitions().getWithResponse(roleScope.toString(), roleDefinitionName, requestContext),
502+
KeyVaultAdministrationUtil::roleDefinitionToKeyVaultRoleDefinition);
527503
}
528504

529505
/**
@@ -552,13 +528,9 @@ public Response<KeyVaultRoleDefinition> getRoleDefinitionWithResponse(KeyVaultRo
552528
*/
553529
@ServiceMethod(returns = ReturnType.SINGLE)
554530
public void deleteRoleDefinition(KeyVaultRoleScope roleScope, String roleDefinitionName) {
555-
try {
556-
validateRoleDefinitionParameters(roleScope, roleDefinitionName);
531+
validateRoleDefinitionParameters(roleScope, roleDefinitionName, LOGGER);
557532

558-
clientImpl.getRoleDefinitions().delete(roleScope.toString(), roleDefinitionName);
559-
} catch (RuntimeException e) {
560-
throw LOGGER.logThrowableAsError(e);
561-
}
533+
clientImpl.getRoleDefinitions().delete(roleScope.toString(), roleDefinitionName);
562534
}
563535

564536
/**
@@ -600,15 +572,11 @@ public Response<Void> deleteRoleDefinitionWithResponse(KeyVaultRoleScope roleSco
600572
try (Response<RoleDefinition> response = clientImpl.getRoleDefinitions()
601573
.deleteWithResponse(roleScope.toString(), roleDefinitionName, requestContext)) {
602574

603-
validateRoleDefinitionParameters(roleScope, roleDefinitionName);
575+
validateRoleDefinitionParameters(roleScope, roleDefinitionName, LOGGER);
604576

605577
return new Response<>(response.getRequest(), response.getStatusCode(), response.getHeaders(), null);
606-
} catch (RuntimeException e) {
607-
if (e instanceof HttpResponseException) {
608-
return swallowExceptionForStatusCode(404, (HttpResponseException) e, LOGGER);
609-
}
610-
611-
throw LOGGER.logThrowableAsError(e);
578+
} catch (HttpResponseException e) {
579+
return swallowExceptionForStatusCode(404, e);
612580
}
613581
}
614582

@@ -675,18 +643,14 @@ public PagedIterable<KeyVaultRoleAssignment> listRoleAssignments(KeyVaultRoleSco
675643
public PagedIterable<KeyVaultRoleAssignment> listRoleAssignments(KeyVaultRoleScope roleScope,
676644
RequestContext requestContext) {
677645

678-
try {
679-
Objects.requireNonNull(roleScope, String.format(CANNOT_BE_NULL, "'roleScope'"));
680-
681-
return mapPages(
682-
pagingOptions -> clientImpl.getRoleAssignments()
683-
.listForScopeSinglePage(roleScope.toString(), null, requestContext),
684-
(pagingOptions, nextLink) -> clientImpl.getRoleAssignments()
685-
.listForScopeNextSinglePage(nextLink, requestContext),
686-
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
687-
} catch (RuntimeException e) {
688-
throw LOGGER.logThrowableAsError(e);
689-
}
646+
Objects.requireNonNull(roleScope, "'roleScope' cannot be null.");
647+
648+
return mapPages(
649+
pagingOptions -> clientImpl.getRoleAssignments()
650+
.listForScopeSinglePage(roleScope.toString(), null, requestContext),
651+
(pagingOptions, nextLink) -> clientImpl.getRoleAssignments()
652+
.listForScopeNextSinglePage(nextLink, requestContext),
653+
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
690654
}
691655

692656
/**
@@ -769,16 +733,12 @@ public KeyVaultRoleAssignment createRoleAssignment(KeyVaultRoleScope roleScope,
769733
public KeyVaultRoleAssignment createRoleAssignment(KeyVaultRoleScope roleScope, String roleDefinitionId,
770734
String principalId, String roleAssignmentName) {
771735

772-
try {
773-
RoleAssignmentCreateParameters parameters
774-
= validateAndGetRoleAssignmentCreateParameters(roleScope, roleDefinitionId, principalId,
775-
isNullOrEmpty(roleAssignmentName) ? UUID.randomUUID().toString() : roleAssignmentName);
736+
RoleAssignmentCreateParameters parameters
737+
= validateAndGetRoleAssignmentCreateParameters(roleScope, roleDefinitionId, principalId,
738+
isNullOrEmpty(roleAssignmentName) ? UUID.randomUUID().toString() : roleAssignmentName, LOGGER);
776739

777-
return roleAssignmentToKeyVaultRoleAssignment(
778-
clientImpl.getRoleAssignments().create(roleScope.toString(), roleAssignmentName, parameters));
779-
} catch (RuntimeException e) {
780-
throw LOGGER.logThrowableAsError(e);
781-
}
740+
return roleAssignmentToKeyVaultRoleAssignment(
741+
clientImpl.getRoleAssignments().create(roleScope.toString(), roleAssignmentName, parameters));
782742
}
783743

784744
/**
@@ -828,17 +788,13 @@ public KeyVaultRoleAssignment createRoleAssignment(KeyVaultRoleScope roleScope,
828788
public Response<KeyVaultRoleAssignment> createRoleAssignmentWithResponse(KeyVaultRoleScope roleScope,
829789
String roleDefinitionId, String principalId, String roleAssignmentName, RequestContext requestContext) {
830790

831-
try {
832-
RoleAssignmentCreateParameters parameters = validateAndGetRoleAssignmentCreateParameters(roleScope,
833-
roleDefinitionId, principalId, roleAssignmentName);
791+
RoleAssignmentCreateParameters parameters = validateAndGetRoleAssignmentCreateParameters(roleScope,
792+
roleDefinitionId, principalId, roleAssignmentName, LOGGER);
834793

835-
return mapResponse(
836-
clientImpl.getRoleAssignments()
837-
.createWithResponse(roleScope.toString(), roleAssignmentName, parameters, requestContext),
838-
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
839-
} catch (RuntimeException e) {
840-
throw LOGGER.logThrowableAsError(e);
841-
}
794+
return mapResponse(
795+
clientImpl.getRoleAssignments()
796+
.createWithResponse(roleScope.toString(), roleAssignmentName, parameters, requestContext),
797+
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
842798
}
843799

844800
/**
@@ -869,14 +825,10 @@ public Response<KeyVaultRoleAssignment> createRoleAssignmentWithResponse(KeyVaul
869825
*/
870826
@ServiceMethod(returns = ReturnType.SINGLE)
871827
public KeyVaultRoleAssignment getRoleAssignment(KeyVaultRoleScope roleScope, String roleAssignmentName) {
872-
try {
873-
validateRoleAssignmentParameters(roleScope, roleAssignmentName);
828+
validateRoleAssignmentParameters(roleScope, roleAssignmentName, LOGGER);
874829

875-
return roleAssignmentToKeyVaultRoleAssignment(
876-
clientImpl.getRoleAssignments().get(roleScope.toString(), roleAssignmentName));
877-
} catch (RuntimeException e) {
878-
throw LOGGER.logThrowableAsError(e);
879-
}
830+
return roleAssignmentToKeyVaultRoleAssignment(
831+
clientImpl.getRoleAssignments().get(roleScope.toString(), roleAssignmentName));
880832
}
881833

882834
/**
@@ -917,16 +869,11 @@ public KeyVaultRoleAssignment getRoleAssignment(KeyVaultRoleScope roleScope, Str
917869
public Response<KeyVaultRoleAssignment> getRoleAssignmentWithResponse(KeyVaultRoleScope roleScope,
918870
String roleAssignmentName, RequestContext requestContext) {
919871

920-
try {
921-
validateRoleAssignmentParameters(roleScope, roleAssignmentName);
872+
validateRoleAssignmentParameters(roleScope, roleAssignmentName, LOGGER);
922873

923-
return mapResponse(
924-
clientImpl.getRoleAssignments()
925-
.getWithResponse(roleScope.toString(), roleAssignmentName, requestContext),
926-
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
927-
} catch (RuntimeException e) {
928-
throw LOGGER.logThrowableAsError(e);
929-
}
874+
return mapResponse(
875+
clientImpl.getRoleAssignments().getWithResponse(roleScope.toString(), roleAssignmentName, requestContext),
876+
KeyVaultAdministrationUtil::roleAssignmentToKeyVaultRoleAssignment);
930877
}
931878

932879
/**
@@ -954,13 +901,9 @@ public Response<KeyVaultRoleAssignment> getRoleAssignmentWithResponse(KeyVaultRo
954901
*/
955902
@ServiceMethod(returns = ReturnType.SINGLE)
956903
public void deleteRoleAssignment(KeyVaultRoleScope roleScope, String roleAssignmentName) {
957-
try {
958-
validateRoleAssignmentParameters(roleScope, roleAssignmentName);
904+
validateRoleAssignmentParameters(roleScope, roleAssignmentName, LOGGER);
959905

960-
clientImpl.getRoleAssignments().delete(roleScope.toString(), roleAssignmentName);
961-
} catch (RuntimeException e) {
962-
throw LOGGER.logThrowableAsError(e);
963-
}
906+
clientImpl.getRoleAssignments().delete(roleScope.toString(), roleAssignmentName);
964907
}
965908

966909
/**
@@ -1001,15 +944,11 @@ public Response<Void> deleteRoleAssignmentWithResponse(KeyVaultRoleScope roleSco
1001944
try (Response<RoleAssignment> response = clientImpl.getRoleAssignments()
1002945
.deleteWithResponse(roleScope.toString(), roleAssignmentName, requestContext)) {
1003946

1004-
validateRoleAssignmentParameters(roleScope, roleAssignmentName);
947+
validateRoleAssignmentParameters(roleScope, roleAssignmentName, LOGGER);
1005948

1006949
return new Response<>(response.getRequest(), response.getStatusCode(), response.getHeaders(), null);
1007-
} catch (RuntimeException e) {
1008-
if (e instanceof HttpResponseException) {
1009-
return swallowExceptionForStatusCode(404, (HttpResponseException) e, LOGGER);
1010-
}
1011-
1012-
throw LOGGER.logThrowableAsError(e);
950+
} catch (HttpResponseException e) {
951+
return swallowExceptionForStatusCode(404, e);
1013952
}
1014953
}
1015954
}

sdk/keyvault-v2/azure-security-keyvault-administration/src/main/java/com/azure/v2/security/keyvault/administration/KeyVaultAccessControlClientBuilder.java

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import java.util.ArrayList;
3333
import java.util.List;
3434
import java.util.Map;
35+
import java.util.Objects;
3536

3637
import static io.clientcore.core.utils.CoreUtils.isNullOrEmpty;
3738

@@ -122,19 +123,19 @@ public KeyVaultAccessControlClient buildClient() {
122123
String endpoint = getEndpoint(configuration);
123124

124125
if (endpoint == null) {
125-
throw LOGGER.logThrowableAsError(new IllegalStateException(
126-
"An Azure Key Vault or Managed HSM endpoint is required. You can set one by using the"
126+
throw LOGGER.throwableAtError()
127+
.log("An Azure Key Vault or Managed HSM endpoint is required. You can set one by using the"
127128
+ " KeyVaultAccessControlClientBuilder.endpoint() method or by setting the environment variable"
128-
+ " 'AZURE_KEYVAULT_ENDPOINT'."));
129+
+ " 'AZURE_KEYVAULT_ENDPOINT'.", IllegalStateException::new);
129130
}
130131

131132
KeyVaultAdministrationServiceVersion version
132133
= this.version == null ? KeyVaultAdministrationServiceVersion.getLatest() : this.version;
133134

134135
if (credential == null) {
135-
throw LOGGER.logThrowableAsError(
136-
new IllegalStateException("A credential object is required. You can set one by using the"
137-
+ " KeyVaultAccessControlClientBuilder.credential() method."));
136+
throw LOGGER.throwableAtError()
137+
.log("A credential object is required. You can set one by using the"
138+
+ " KeyVaultAccessControlClientBuilder.credential() method.", IllegalStateException::new);
138139
}
139140

140141
// Closest to API goes first, closest to wire goes last.
@@ -179,16 +180,13 @@ public KeyVaultAccessControlClient buildClient() {
179180
*/
180181
@Override
181182
public KeyVaultAccessControlClientBuilder endpoint(String endpoint) {
182-
if (endpoint == null) {
183-
throw LOGGER.logThrowableAsError(new NullPointerException("'endpoint' cannot be null."));
184-
}
185-
183+
Objects.requireNonNull(endpoint, "'endpoint' cannot be null.");
186184
try {
187185
URI uri = new URI(endpoint);
188186
this.endpoint = uri.toString();
189187
} catch (URISyntaxException e) {
190-
throw LOGGER
191-
.logThrowableAsError(new IllegalArgumentException("The Azure Key Vault endpoint is malformed.", e));
188+
throw LOGGER.throwableAtError()
189+
.log("The Azure Key Vault endpoint is malformed.", e, IllegalArgumentException::new);
192190
}
193191

194192
return this;
@@ -206,10 +204,7 @@ public KeyVaultAccessControlClientBuilder endpoint(String endpoint) {
206204
*/
207205
@Override
208206
public KeyVaultAccessControlClientBuilder credential(TokenCredential credential) {
209-
if (credential == null) {
210-
throw LOGGER.logThrowableAsError(new NullPointerException("'credential' cannot be null."));
211-
}
212-
207+
Objects.requireNonNull(credential, "'credential' cannot be null.");
213208
this.credential = credential;
214209

215210
return this;
@@ -255,10 +250,7 @@ public KeyVaultAccessControlClientBuilder credential(TokenCredential credential)
255250
*/
256251
@Override
257252
public KeyVaultAccessControlClientBuilder addHttpPipelinePolicy(HttpPipelinePolicy pipelinePolicy) {
258-
if (pipelinePolicy == null) {
259-
throw LOGGER.logThrowableAsError(new NullPointerException("'pipelinePolicy' cannot be null."));
260-
}
261-
253+
Objects.requireNonNull(pipelinePolicy, "'pipelinePolicy' cannot be null.");
262254
pipelinePolicies.add(pipelinePolicy);
263255

264256
return this;

0 commit comments

Comments
 (0)