Hello,
I am working with a table, there are files within it that can be validated with a toggle on or off button, but in the case that it’s duplicated I want there to be a button to delete the file. Up to this point, the mechanism works. But when I delete one of the duplicate files and it should display the toggle instead of the delete button, I can not get it to refresh the button back to a toggle switch.

the code is setup something like this:
Column Generator and called function:
 @Install(to = "psaArchivoPublicoesTable.validado", subject = "columnGenerator")
private Component psaArchivoPublicoesTableValidadoColumnGenerator(PsaArchivoPublico psaArchivoPublico) {
    if (security.isSpecificPermitted("psaArchivoPublico.validar")) {
        return createSwitchValidar(psaArchivoPublico);
    } else {
        return createCheckBoxValidado(psaArchivoPublico);
    }
}
Button / Switch
  private Component createSwitchValidar(PsaArchivoPublico psaArchivoPublico) {
    Button button = uiComponents.create(Button.class);
    UUID archivoTipoPublicoID = psaArchivoPublico.getPsaArchivoTipo().getId();
    PsaArchivoTipo psaArchivoTipoInvalido = archivosPsaTipoRequeridos.stream()
            .filter(psaArchivoTipo -> psaArchivoTipo.getId()
                    .equals(archivoTipoPublicoID)).findAny().orElse(null);
    if (psaArchivoTipoInvalido != null) {
        button.addStyleName("danger");
        button.setIcon(icons.get(CubaIcon.TRASH));
        button.setAction(new BaseAction("enabled")
                .withPrimary(true).withHandler(event -> {
                    try {
                        psaArchivoService.delete(psaArchivoPublico);
                        psaArchivoPublicoesDl.load();
                        psaArchivoPublicoesTable.repaint();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    psaArchivoPublicoesDl.load();
                }));
        return button;
    }
    if (psaArchivoPublico.getValidado() == null || psaArchivoPublico.getValidado() == false) {
        button.setIcon(icons.get(CubaIcon.TOGGLE_OFF));
        button.addStyleName("quiet");
    } else {
        button.setIcon(icons.get(CubaIcon.TOGGLE_ON));
        button.addStyleName("secondary");
    }
    button.setAction(new BaseAction("enabled")
            .withPrimary(true).withHandler(event -> {
                psaArchivoService.validar(psaArchivoPublico);
                psaArchivoPublicoesDl.load();
            }));
    return button;