Avoid UriComponentsBuilder.fromUri

Closes gh-15852
This commit is contained in:
Bodo Graumann 2024-09-25 16:57:44 +02:00 committed by Josh Cummings
parent 43ddf73ddb
commit 0cd6a19b87
2 changed files with 18 additions and 15 deletions

View File

@ -45,6 +45,7 @@ import org.springframework.util.Assert;
import org.springframework.web.client.HttpClientErrorException;
import org.springframework.web.client.RestOperations;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponents;
import org.springframework.web.util.UriComponentsBuilder;
/**
@ -82,11 +83,12 @@ final class JwtDecoderProviderConfigurationUtils {
}
static Map<String, Object> getConfigurationForOidcIssuerLocation(String oidcIssuerLocation) {
return getConfiguration(oidcIssuerLocation, rest, oidc(URI.create(oidcIssuerLocation)));
UriComponents uri = UriComponentsBuilder.fromUriString(oidcIssuerLocation).build();
return getConfiguration(oidcIssuerLocation, rest, oidc(uri));
}
static Map<String, Object> getConfigurationForIssuerLocation(String issuer, RestOperations rest) {
URI uri = URI.create(issuer);
UriComponents uri = UriComponentsBuilder.fromUriString(issuer).build();
return getConfiguration(issuer, rest, oidc(uri), oidcRfc8414(uri), oauth(uri));
}
@ -183,25 +185,25 @@ final class JwtDecoderProviderConfigurationUtils {
throw new IllegalArgumentException(errorMessage);
}
private static URI oidc(URI issuer) {
private static URI oidc(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(issuer.getPath() + OIDC_METADATA_PATH)
.build(Collections.emptyMap());
// @formatter:on
}
private static URI oidcRfc8414(URI issuer) {
private static URI oidcRfc8414(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(OIDC_METADATA_PATH + issuer.getPath())
.build(Collections.emptyMap());
// @formatter:on
}
private static URI oauth(URI issuer) {
private static URI oauth(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(OAUTH_METADATA_PATH + issuer.getPath())
.build(Collections.emptyMap());
// @formatter:on

View File

@ -41,6 +41,7 @@ import org.springframework.core.ParameterizedTypeReference;
import org.springframework.util.Assert;
import org.springframework.web.reactive.function.client.WebClient;
import org.springframework.web.reactive.function.client.WebClientResponseException;
import org.springframework.web.util.UriComponents;
import org.springframework.web.util.UriComponentsBuilder;
final class ReactiveJwtDecoderProviderConfigurationUtils {
@ -93,29 +94,29 @@ final class ReactiveJwtDecoderProviderConfigurationUtils {
}
static Mono<Map<String, Object>> getConfigurationForIssuerLocation(String issuer, WebClient web) {
URI uri = URI.create(issuer);
UriComponents uri = UriComponentsBuilder.fromUriString(issuer).build();
return getConfiguration(issuer, web, oidc(uri), oidcRfc8414(uri), oauth(uri));
}
private static URI oidc(URI issuer) {
private static URI oidc(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(issuer.getPath() + OIDC_METADATA_PATH)
.build(Collections.emptyMap());
// @formatter:on
}
private static URI oidcRfc8414(URI issuer) {
private static URI oidcRfc8414(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(OIDC_METADATA_PATH + issuer.getPath())
.build(Collections.emptyMap());
// @formatter:on
}
private static URI oauth(URI issuer) {
private static URI oauth(UriComponents issuer) {
// @formatter:off
return UriComponentsBuilder.fromUri(issuer)
return UriComponentsBuilder.newInstance().uriComponents(issuer)
.replacePath(OAUTH_METADATA_PATH + issuer.getPath())
.build(Collections.emptyMap());
// @formatter:on