Class<?> componentType = null;
Integer index = null;
if (!paramIndexes.containsKey(actualName) && !batchParamIndexes.containsKey(actualName)) {
throw new DaoGenerateException("Missing @Param(\"" + actualName + "\") or @BatchParam(\""
+ actualName + "\") in parameter of method");
} else if (paramIndexes.containsKey(actualName)) {
index = paramIndexes.get(actualName);
componentType = paramTypes[index];
} else {
index = batchParamIndexes.get(actualName);
Class<?> paramType = paramTypes[index];
if (!paramType.isArray()) {
throw new DaoGenerateException("@BatchParam(\"" + paramName
+ "\") only can be used on an array in parameter of method");
}
componentType = paramTypes[index].getComponentType();
}
parameterIndexes[i] = index;
String prop = paramName.substring(pos + 1);
Method getter = findGetterByPropertyName(componentType, prop);
getter.setAccessible(true); //no check to upgrade performance
getters[i] = getter;
} else { // don't need getters
getters[i] = null;
if (!paramIndexes.containsKey(paramName) && !batchParamIndexes.containsKey(paramName)) {
throw new DaoGenerateException("Missing @Param(\"" + paramName + "\") or @BatchParam(\""
+ paramName + "\") in parameter of method");
} else if (paramIndexes.containsKey(paramName)) {
Integer index = paramIndexes.get(paramName);
parameterIndexes[i] = index;
} else {