class KeycloakOidcClient extends OidcClient {

    /**
     * <p>Constructor for KeycloakOidcClient.</p>
     */
    public KeycloakOidcClient() {
    }

    /**
     * <p>Constructor for KeycloakOidcClient.</p>
     *
     * @param configuration a {@link KeycloakOidcConfiguration} object
     */
    public KeycloakOidcClient(final KeycloakOidcConfiguration configuration) {
        super(configuration);
    }

    /** {@inheritDoc} */
    @Override
    protected void internalInit(final boolean forceReinit) {<FILL_FUNCTION_BODY>}
}

        val profileCreator = new OidcProfileCreator(getConfiguration(), this);
        profileCreator.setProfileDefinition(new OidcProfileDefinition(x -> new KeycloakOidcProfile()));
        setProfileCreatorIfUndefined(profileCreator);

        addAuthorizationGenerator(new KeycloakRolesAuthorizationGenerator(getConfiguration().getClientId()));

        super.internalInit(forceReinit);
    
<methods>public void <init>() ,public void <init>(org.pac4j.oidc.config.OidcConfiguration) ,public void notifySessionRenewal(CallContext, java.lang.String) ,public Optional<org.pac4j.core.profile.UserProfile> renewUserProfile(CallContext, org.pac4j.core.profile.UserProfile) <variables>private org.pac4j.oidc.config.OidcConfiguration configuration