1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.rblasch.convert.converters.collections;
17
18 import org.rblasch.convert.converters.AbstractConverterFactory;
19 import org.rblasch.convert.type.ParameterizableType;
20 import org.rblasch.convert.type.Type;
21 import org.rblasch.convert.type.Types;
22
23 import java.util.HashSet;
24 import java.util.List;
25 import java.util.Set;
26
27 /***
28 * @author Ronald Blaschke
29 */
30 public class ListConverterFactory extends AbstractConverterFactory {
31 public Set
32 final Set
33
34 if (sourceType instanceof ParameterizableType
35 && destinationType instanceof ParameterizableType) {
36 final ParameterizableType st = (ParameterizableType) sourceType;
37 final ParameterizableType dt = (ParameterizableType) destinationType;
38
39 if (st.getType().equals(Types.findTypeByClass(List.class))
40 && dt.getType().equals(Types.findTypeByClass(List.class))) {
41 final Type sct = st.getParameter(0);
42 final Type dct = dt.getParameter(0);
43
44 if (can(sct, dct)) {
45 final ListConverter c = new ListConverter(sct, dct, lookup(sct, dct));
46 converters.add(c);
47 }
48 }
49 }
50
51 return converters;
52 }
53 }