Ejemplos de ISValidator

Esta página recoge unos ejemplos de uso de las rutinas ISValidator. Puede así mismo ver los ejemplos que se incluyen en el paquete para descargar .

Situacion

Supongamos que queremos realizar un programa que funcione bajo la línea de comandos del Sistema Operativo para mandar emails y registrarlos en una base de datos. A este programa se le deben pasar cuatro parámetros:

  • Email de destino, como primer argumento. Se impone por restricciones de la base de datos donde se van a almacenar los datos a introducir, que la longitud de este campo no sea superior a 100 caracteres, y por supuesto sea un email válido.
  • Asunto, como segundo argumento. Las restricciones para este campo son que no sea nulo y tenga una longitud máxima de 255 caracteres.
  • Fecha de envío, como tercer argumento. Este campo tiene como restricción que sea una fecha válida (dd/mm/aaaa).
  • Cuerpo del mensaje, como cuarto argumento. Se impone una restricción de tamaño máximo de 1000 caracteres.

Si alguna de estas restricciones no se cumpliese se deberá mostrar un mensaje por pantalla indicando todas las condiciones incumplidas.

Componentes Implicados

Los diferentes componentes de ISValidator implicados en este ejemplo son los siguientes:

Componente Descripcion
Data

Realizan la función de tener almacenadas todas las restricciones que se aplican a un determinado campo. Así mismo en caso de querer utilizar un Procesador de Restricciones Invalidas se encargaría de su manejo.

Estos componentes se encargan de realizar el control del flujo de ejecución de las restricciones y los Procesadores de Restricciones Invalidas.

Cada Contenedor de Restricciones maneja las restricciones de un único campo o dato.

En nuestro ejemplo tendríamos cuatro contenedores de restricciones, uno por cada dato a aplicarle las restricciones.

Check

Realizan la función de comprobar si un determinado dato cumple o no un criterio.

En nuestro caso tendríamos varias restricciones:

  • Email tendría a aplicar la restricción de email y la de longitud menor que.
  • Asunto tendría a aplicar la de longitud menor.
  • Fecha de envío tendría a aplicar la de fecha.
  • El cuerpo del mensaje tendría a aplicar la de longitud menor.
DataGroup

Realizan la función de agrupar los diferentes Contenedores de Restricciones que puede haber en una validación para facilitar el manejo por parte del programador y soportar también las Restricciones Condicionales.

En nuestro ejemplo utilizaremos uno para contener los cuarto Contenedores de Restricciones