예제 #1
0
 public final boolean supports(ParamMetaData metaData) {
   if (innerSupports(metaData)) {
     Class<?>[] generics =
         compileGenericParameterTypesDetail(metaData.getMethod(), metaData.getIndex());
     if (generics == null || generics.length == 0) {
       throw new IllegalArgumentException(
           "please use generic for "
               + metaData.getParamType().getName()
               + " ["
               + metaData.getControllerClass().getName()
               + "."
               + metaData.getMethod().getName()
               + "]");
     }
     metaData.setUserObject(this, generics[0]);
     return true;
   }
   return false;
 }
예제 #2
0
 public boolean supports(ParamMetaData metaData) {
   boolean supports =
       Map.class == metaData.getParamType() || HashMap.class == metaData.getParamType();
   if (supports) {
     Class<?>[] generics =
         compileGenericParameterTypesDetail(metaData.getMethod(), metaData.getIndex());
     if (generics == null || generics.length == 0) {
       throw new IllegalArgumentException(
           "please use generic for "
               + metaData.getParamType().getName()
               + " ["
               + metaData.getControllerClass().getName()
               + "."
               + metaData.getMethod().getName()
               + "]");
     }
     metaData.setUserObject(this, generics);
   }
   return supports;
 }