@@ -152,23 +152,23 @@ public Validator rule(String key, ValidationRule... rules) {
152152
153153 public ValidationResult validate (ValidationContext context , AbstractElement rootElement ) {
154154 context .setValidator (this );
155- Map <String [], List <String >> errors = new HashMap <>();
155+ Map <String [], List <ValidationError >> errors = new HashMap <>();
156156 for (String [] key : rules .keySet ()) {
157157 errors .putAll (check (context , rules , new String [0 ], new String [0 ], key , rootElement ));
158158 }
159159 return new ValidationResult (context , errors );
160160 }
161161
162- private Map <String [], List <String >> check (ValidationContext context , Map <String [], ValidationConfig > rules , String [] keyPrefix , String [] resolvedKeyPrefix , String [] key , AbstractElement element ) {
162+ private Map <String [], List <ValidationError >> check (ValidationContext context , Map <String [], ValidationConfig > rules , String [] keyPrefix , String [] resolvedKeyPrefix , String [] key , AbstractElement element ) {
163163 if (key .length == 0 ) {
164- Map <String [], List <String >> errors = new HashMap <>();
164+ Map <String [], List <ValidationError >> errors = new HashMap <>();
165165 ValidationConfig config = getMapValue (rules , keyPrefix );
166166 for (ValidationRule rule : config .rules ) {
167167 String error = rule .validate (context , config .field , element );
168168 if (error != null ) {
169169 if (!errors .containsKey (resolvedKeyPrefix ))
170170 errors .put (resolvedKeyPrefix , new ArrayList <>());
171- errors .get (resolvedKeyPrefix ).add (error );
171+ errors .get (resolvedKeyPrefix ).add (new ValidationError ( rule , error ) );
172172 }
173173 }
174174 return errors ;
@@ -181,7 +181,7 @@ private Map<String[], List<String>> check(ValidationContext context, Map<String[
181181 System .arraycopy (keyPrefix , 0 , innerKeyPrefix , 0 , keyPrefix .length );
182182 innerKeyPrefix [innerKeyPrefix .length - 1 ] = key [0 ];
183183 if (key [0 ].equals ("*" )) {
184- Map <String [], List <String >> errors = new HashMap <>();
184+ Map <String [], List <ValidationError >> errors = new HashMap <>();
185185 if (element .isArray ()) {
186186 for (int i = 0 ; i < element .array ().size (); i ++) {
187187 String [] innerResolvedKeyPrefix = new String [keyPrefix .length + 1 ];
0 commit comments