Ejemplo n.º 1
0
 void actualizarPropiedadLista(string propiedad, IValorEstado valor)
 {
     this.estadoValido  = true;
     this.estadoEditado = false;
     if (hayReglasQueValidar())                                                   // Si hay reglas que validar
     {
         Incumplimientos incumplimientos = this.reglas.Validar(propiedad, valor); //  validarlas
         if (incumplimientos != null && incumplimientos.Conteo > 0)               //  si hubo incumplimientos
         {
             if (incumplimientos.Conteo > 0)
             {
                 invalidarEstado();                                           //  establecer estado como no-válido
                 agregarIncumplimientosPropiedad(propiedad, incumplimientos); //  agregar a Incumplimientos de Propiedad
                 lanzarExcepcionValorInvalido(valor, incumplimientos);        //  lanzar excepción
             }
             else                                                             //  si no hubo incumplimientos
             {
                 this.incumplimientos.Eliminar(propiedad);                    //	 eliminar Propiedad de la lista
             }
         }
     }
     if (this.estadoValido)
     {
         actualizarLista(propiedad, valor);
         this.estadoEditado = true;                                                                                                                                              //  establecer estado como editado
     }
 }
Ejemplo n.º 2
0
 public void Agregar(string propiedad, Incumplimientos incumplimientos)
 {
     if (this.entradas.ContainsKey(propiedad))
     {
         Eliminar(propiedad);
     }
     this.entradas.Add(propiedad, incumplimientos);
 }
Ejemplo n.º 3
0
        public Incumplimientos Validar(string propiedad, IValorEstado valor)
        {
            Incumplimientos incumplimientos = null;

            if (this.entradas.ContainsKey(propiedad))
            {
                incumplimientos = new Incumplimientos();
                bool valido = true;
                foreach (MetodoValidacion Regla in this.entradas[propiedad].Reglas)
                {
                    valido &= Regla(valor, incumplimientos);
                }
            }
            return(incumplimientos);
        }
Ejemplo n.º 4
0
 public ValorInvalido(string message, IValorEstado valor, Incumplimientos incumplimientos) : base(message)
 {
     this.valor           = valor;
     this.incumplimientos = incumplimientos;
 }
Ejemplo n.º 5
0
 void lanzarExcepcionValorInvalido(IValorEstado valor, Incumplimientos incumplimientos)
 {
     throw new ValorInvalido("Valor inválido", valor, incumplimientos);
 }
Ejemplo n.º 6
0
 void agregarIncumplimientosPropiedad(string propiedad, Incumplimientos incumplimientos)
 {
     this.incumplimientos.Agregar(propiedad, incumplimientos);
 }