package org.egl_cepgl.pm.config;

import org.apache.http.client.HttpClient;
import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder;
import org.keycloak.OAuth2Constants;
import org.keycloak.admin.client.Keycloak;
import org.keycloak.admin.client.KeycloakBuilder;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.HashMap;
import java.util.Map;

import static org.keycloak.models.PasswordPolicy.build;

@Configuration
public class KeycloakAdminClientConfig
{
    @Value("${keycloak.urls.auth}")
    private String keycloakServerUrl;
    @Value("${keycloak.realm}")
    private String keycloakRealm;
    @Value("${keycloak.admin-client-username}")
    private String keycloakUsername;
    @Value("${keycloak.admin-client-password}")
    private String keycloakPassword;
    @Value("${keycloak.admin-client-id}") // Your admin client ID
    private String keycloakClientId;

    @Bean
    public Keycloak keyCloakAdminClient() {
        return KeycloakBuilder.builder()
                .serverUrl(keycloakServerUrl)
                .realm(keycloakRealm)
                .username(keycloakUsername)
                .password(keycloakPassword)
                .clientId(keycloakClientId)
                .build();
    }
}
