1111import java .lang .reflect .Constructor ;
1212import java .lang .reflect .Field ;
1313import java .lang .reflect .InvocationTargetException ;
14+ import java .sql .Date ;
1415import java .sql .Timestamp ;
1516import java .util .*;
1617
@@ -22,12 +23,16 @@ public class Validator {
2223 static {
2324 registerRuleType ("string" , StringRule .class );
2425 registerRuleType ("boolean" , BooleanRule .class );
26+ registerRuleType ("bool" , BooleanRule .class );
2527 registerRuleType ("enum" , EnumRule .class );
2628 registerRuleType ("required" , RequiredRule .class );
29+ registerRuleType ("req" , RequiredRule .class );
2730 registerRuleType ("ipv4" , IPv4AddressRule .class );
2831 registerRuleType ("ipv6" , IPv6AddressRule .class );
32+ registerRuleType ("int" , IntegerRule .class );
2933 registerRuleType ("integer" , IntegerRule .class );
30- registerRuleType ("timestamp" , TimestampRule .class );
34+ registerRuleType ("date" , DateRule .class );
35+ registerRuleType ("array" , ArrayRule .class );
3136 }
3237
3338 public static void registerRuleType (String name , Class <? extends ValidationRule > type ){
@@ -219,8 +224,12 @@ private static Map<String[], List<ValidationRule>> getClassRules(Class<?> type){
219224 return rules ;
220225 if (type .equals (String .class ))
221226 return rules ;
222- if (type .equals (Timestamp .class ) || type .equals (Date .class )){
223- rules .put (new String [0 ], Collections .singletonList (new TimestampRule ()));
227+ if (type .equals (Timestamp .class ) || type .equals (java .util .Date .class )){
228+ rules .put (new String [0 ], Collections .singletonList (new DateRule (new String []{})));
229+ return rules ;
230+ }
231+ if (type .equals (Date .class )){
232+ rules .put (new String [0 ], Collections .singletonList (new DateRule (new String []{"date" })));
224233 return rules ;
225234 }
226235 if (type .equals (Boolean .class )){
0 commit comments