package dev.lions.user.manager.dto.sync;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Set;

/**
 * DTO rapport de cohérence entre données Keycloak et cache local.
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SyncConsistencyDTO {
    private String realmName;
    private String status; // OK, MISMATCH, ERROR
    private Integer usersKeycloakCount;
    private Integer usersLocalCount;
    private Set<String> missingUsersInLocal;
    private Set<String> missingUsersInKeycloak;
    private Integer rolesKeycloakCount;
    private Integer rolesLocalCount;
    private Set<String> missingRolesInLocal;
    private Set<String> missingRolesInKeycloak;
    private String error;
}
