1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.rblasch.convert.converters;
17
18 import org.rblasch.convert.ConverterFactory;
19 import org.rblasch.convert.ConverterLookup;
20 import org.rblasch.convert.MetaConverter;
21 import org.rblasch.convert.NoSuchConversionException;
22 import org.rblasch.convert.type.Type;
23
24 /***
25 * @author Ronald Blaschke
26 */
27 public abstract class AbstractConverterFactory implements ConverterFactory {
28 ConverterLookup lookup;
29 public void setLookup(final ConverterLookup lookup) {
30 this.lookup = lookup;
31 }
32
33 protected MetaConverter lookup(final Type sourceType, final Type destinationType) {
34 return lookup.lookup(sourceType, destinationType);
35 }
36
37 protected boolean can(final Type sourceType, final Type destinationType) {
38 try {
39 lookup.lookup(sourceType, destinationType);
40 return true;
41 } catch (final NoSuchConversionException ex) {
42 return false;
43 }
44 }
45 }