1 | /* |
2 | * Copyright 2007 brunella ltd |
3 | * |
4 | * Licensed under the LGPL Version 3 (the "License"); |
5 | * you may not use this file except in compliance with the License. |
6 | * |
7 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
8 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
9 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
10 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
11 | * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
12 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
13 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
14 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
15 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
16 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
17 | * THE POSSIBILITY OF SUCH DAMAGE. |
18 | */ |
19 | package sf.qof.mapping; |
20 | |
21 | import java.util.HashSet; |
22 | import java.util.Set; |
23 | |
24 | public abstract class AbstractCharacterMapping extends AbstractBaseMapping implements Mapping, ParameterMapping, |
25 | ResultMapping { |
26 | |
27 | public void accept(Mapper mapper, MappingVisitor visitor) { |
28 | visitor.visit(mapper, this); |
29 | } |
30 | |
31 | public abstract void accept(Mapper mapper, CharacterMappingVisitor visitor); |
32 | |
33 | public static class StringMapping extends AbstractCharacterMapping { |
34 | private static final Set<Class<?>> types = new HashSet<Class<?>>(); |
35 | static { |
36 | types.add(String.class); |
37 | } |
38 | |
39 | public static Set<Class<?>> getTypes() { |
40 | return types; |
41 | } |
42 | |
43 | public void accept(Mapper mapper, CharacterMappingVisitor visitor) { |
44 | visitor.visit(mapper, this); |
45 | } |
46 | } |
47 | |
48 | public static class CharacterMapping extends AbstractCharacterMapping { |
49 | private static final Set<Class<?>> types = new HashSet<Class<?>>(); |
50 | static { |
51 | types.add(char.class); |
52 | types.add(Character.class); |
53 | } |
54 | |
55 | public static Set<Class<?>> getTypes() { |
56 | return types; |
57 | } |
58 | |
59 | public void accept(Mapper mapper, CharacterMappingVisitor visitor) { |
60 | visitor.visit(mapper, this); |
61 | } |
62 | } |
63 | } |