Validator alterar

pessoal eu tenho o seguinte problema eu tenhu uma classe usuario e nela tem o campo CFP dai quando eu vou enserir eu estou validadando o campo CPF eu fiz um validator que verifica no banco se o CFP foi ou nuam enserido soh q na hora de alterar ele vai da erro pois o cpf jah tah lah eu queria q ele naum valida-se o que tah cendu alterado no momento soh os demais soh q naum sei como pegar o registro q estou alterando pelo validator.

validad

package validator;

import dao.UsuarioDAO;
import entidades.Usuario;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;

/**
 *
 * @author gustavorozolin
 */
public class cpfValidatorUsuario implements Validator {

    @SuppressWarnings("empty-statement")
    public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
        String msg = null;
        boolean erro=false;
        if ("111.111.111-11".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
        else if ("222.222.222-22".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
        else if ("333.333.333-33".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
        else if ("444.444.444-44".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
       else if ("555.555.555-55".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
       else if ("666.666.666-66".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
       else if ("777.777.777-77".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
       else if ("888.888.888-88".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
       else if ("999.999.999-99".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
        else if ("000.000.000-00".equals(value)){
        msg="Esse CPF é invalido";
        erro=true;}
        if(!"___.___.___-__".equals(value)){
        UsuarioDAO dao =new UsuarioDAO(Usuario.class);
        if (dao.verificaCPFIgual(value.toString())){
        erro=true;
        msg="Esse CPF já está cadastrado.";
        }}

    
        if (erro){
        FacesMessage fmsg = new FacesMessage(msg);
        fmsg.setSeverity(FacesMessage.SEVERITY_ERROR);
        throw new ValidatorException(fmsg);
        }
    
    }


}