/** * List all the array parameters that contains more that 1 parameters. * Indeed, array parameter below 1 parameter will not change the text query nor the parameter indexes. */ private static List<ArrayParameter> arrayParametersSortedAsc(Map<String, List<Integer>> parameterNamesToIndexes, Map<String, Query.ParameterSetter> parameters, boolean allowArrayParameters) { List<ArrayParameters.ArrayParameter> arrayParameters = new ArrayList<>(); for(Map.Entry<String, Query.ParameterSetter> parameter : parameters.entrySet()) { if (parameter.getValue().parameterCount > 1) { if (!allowArrayParameters) { throw new Sql2oException("Array parameters are not allowed in batch mode"); } for(int i : parameterNamesToIndexes.get(parameter.getKey())) { arrayParameters.add(new ArrayParameters.ArrayParameter(i, parameter.getValue().parameterCount)); } } } Collections.sort(arrayParameters); return arrayParameters; }
/** * List all the array parameters that contains more that 1 parameters. * Indeed, array parameter below 1 parameter will not change the text query nor the parameter indexes. */ private static List<ArrayParameter> arrayParametersSortedAsc(Map<String, List<Integer>> parameterNamesToIndexes, Map<String, Query.ParameterSetter> parameters, boolean allowArrayParameters) { List<ArrayParameters.ArrayParameter> arrayParameters = new ArrayList<>(); for(Map.Entry<String, Query.ParameterSetter> parameter : parameters.entrySet()) { if (parameter.getValue().parameterCount > 1) { if (!allowArrayParameters) { throw new Sql2oException("Array parameters are not allowed in batch mode"); } for(int i : parameterNamesToIndexes.get(parameter.getKey())) { arrayParameters.add(new ArrayParameters.ArrayParameter(i, parameter.getValue().parameterCount)); } } } Collections.sort(arrayParameters); return arrayParameters; }