in src/main/java/org/apache/sling/auth/oauth_client/impl/ResolvedOidcConnection.java [30:62]
public record ResolvedOidcConnection(
String name,
String authorizationEndpoint,
String tokenEndpoint,
String clientId,
String clientSecret,
List<String> scopes,
List<String> additionalAuthorizationParameters,
java.net.URI jwkSetURL,
String issuer
) {
public static @NotNull ResolvedOidcConnection resolve(@NotNull ClientConnection connection) {
if ( connection instanceof OidcConnectionImpl impl ) {
return new ResolvedOidcConnection(
connection.name(),
impl.authorizationEndpoint(),
impl.tokenEndpoint(),
impl.clientId(),
impl.clientSecret(),
Arrays.asList(impl.scopes()),
Arrays.asList(impl.additionalAuthorizationParameters()),
impl.jwkSetURL(),
impl.issuer()
);
}
throw new IllegalArgumentException(String.format("Unable to resolve %s (name=%s) of type %s",
ClientConnection.class.getSimpleName(), connection.name(), connection.getClass().getName()));
}
}