static void configureClientCallbackUrl(final BaseClient client,
                                           final Pac4jBaseClientProperties clientProperties,
                                           final String defaultUrl) {
        if (client instanceof final IndirectClient indirectClient) {
            val callbackUrl = StringUtils.defaultIfBlank(clientProperties.getCallbackUrl(), defaultUrl);
            indirectClient.setCallbackUrl(callbackUrl);
            LOGGER.trace("Client [{}] will use the callback URL [{}]", client.getName(), callbackUrl);
            val resolver = switch (clientProperties.getCallbackUrlType()) {
                case PATH_PARAMETER -> new PathParameterCallbackUrlResolver();
                case NONE -> new NoParameterCallbackUrlResolver();
                case QUERY_PARAMETER -> new QueryParameterCallbackUrlResolver();
            };
            indirectClient.setCallbackUrlResolver(resolver);
        }
    }
Configure client callback url.

@param client           the client
@param clientProperties the client properties
@param defaultUrl       the default url
support/cas-server-support-pac4j-api/src/main/java/org/apereo/cas/pac4j/client/DelegatedIdentityProviderFactory.java