|
14 | 14 | import java.lang.reflect.Method; |
15 | 15 | import java.lang.reflect.Modifier; |
16 | 16 | import java.lang.reflect.Parameter; |
| 17 | +import java.util.Collection; |
17 | 18 | import java.util.Collections; |
18 | 19 | import java.util.HashSet; |
19 | 20 | import java.util.List; |
@@ -161,21 +162,21 @@ private static Object value(Parameter parameter, ValueNode node, ValueNode value |
161 | 162 | try { |
162 | 163 | if (isFileUpload(node, parameter)) { |
163 | 164 | Multipart multipart = (Multipart) node; |
164 | | - if (List.class.isAssignableFrom(parameter.getType())) { |
165 | | - return multipart.files(value.name()); |
166 | | - } else if (Set.class.isAssignableFrom(parameter.getType())) { |
| 165 | + if (Set.class.isAssignableFrom(parameter.getType())) { |
167 | 166 | return new HashSet<>(multipart.files(value.name())); |
| 167 | + } else if (Collection.class.isAssignableFrom(parameter.getType())) { |
| 168 | + return multipart.files(value.name()); |
168 | 169 | } else if (Optional.class.isAssignableFrom(parameter.getType())) { |
169 | 170 | List<FileUpload> files = multipart.files(value.name()); |
170 | 171 | return files.isEmpty() ? Optional.empty() : Optional.of(files.get(0)); |
171 | 172 | } else { |
172 | 173 | return multipart.file(value.name()); |
173 | 174 | } |
174 | 175 | } else { |
175 | | - if (List.class.isAssignableFrom(parameter.getType())) { |
176 | | - return value.toList($Types.parameterizedType0(parameter.getParameterizedType())); |
177 | | - } else if (Set.class.isAssignableFrom(parameter.getType())) { |
| 176 | + if (Set.class.isAssignableFrom(parameter.getType())) { |
178 | 177 | return value.toSet($Types.parameterizedType0(parameter.getParameterizedType())); |
| 178 | + } else if (Collection.class.isAssignableFrom(parameter.getType())) { |
| 179 | + return value.toList($Types.parameterizedType0(parameter.getParameterizedType())); |
179 | 180 | } else if (Optional.class.isAssignableFrom(parameter.getType())) { |
180 | 181 | return value.toOptional($Types.parameterizedType0(parameter.getParameterizedType())); |
181 | 182 | } else { |
|
0 commit comments