public static List < Class < ? extends IDAOValidator < ? extends Annotation > > > loadDAOValidatorClass ( Object object ) { // Liste de classes de validation retrouvees List < Class < ? extends IDAOValidator < ? extends Annotation > > > result = new ArrayList < Class < ? extends IDAOValidator < ? extends Annotation > > > ( ) ; // Si l'objet est null if ( object == null ) { // On retourne une liste vide return result ; } // Obtention des annotations de la classe Annotation [ ] objectAnnotations = object . getClass ( ) . getAnnotations ( ) ; // Si le tableau est vide if ( objectAnnotations == null || objectAnnotations . length == 0 ) { // On retourne une liste vide return result ; } // Parcours for ( Annotation annotation : objectAnnotations ) { // Si c'est une annotation du Framework if ( isDAOValidatorAnnotation ( annotation ) ) { // Obtention de l'annotation de validfation DAOConstraint daoAnnotation = annotation . annotationType ( ) . getAnnotation ( DAOConstraint . class ) ; // On ajoute l'annotation result . add ( daoAnnotation . validatedBy ( ) ) ; } } // On retourne la liste return result ; }
Methode permettant de charger toutes les Classes de validation de l Objet en fonction du Mode