1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 package nl.openedge.baritus.converters;
33
34 import java.util.Locale;
35
36 /***
37 * localized long converter
38 * @author Eelco Hillenius
39 */
40 public class LongLocaleConverter extends DecimalLocaleConverter
41 {
42
43
44
45 /***
46 * Create a {@link LocaleConverter}
47 * that will throw a {@link ConversionException}
48 * if a conversion error occurs. The locale is the default locale for
49 * this instance of the Java Virtual Machine and an unlocalized pattern is used
50 * for the convertion.
51 *
52 */
53 public LongLocaleConverter()
54 {
55 this(Locale.getDefault());
56 }
57
58 /***
59 * Create a {@link LocaleConverter}
60 * that will throw a {@link ConversionException}
61 * if a conversion error occurs. An unlocalized pattern is used for the convertion.
62 *
63 * @param locale The locale
64 */
65 public LongLocaleConverter(Locale locale)
66 {
67 this(locale, null);
68 }
69
70 /***
71 * Create a {@link LocaleConverter}
72 * that will throw a {@link ConversionException}
73 * if a conversion error occurs. An unlocalized pattern is used for the convertion.
74 *
75 * @param locale The locale
76 * @param pattern The convertion pattern
77 */
78 public LongLocaleConverter(Locale locale, String pattern)
79 {
80 this(locale, pattern, false);
81 }
82
83 /***
84 * Create a {@link LocaleConverter}
85 * that will throw a {@link ConversionException}
86 * if a conversion error occurs.
87 *
88 * @param locale The locale
89 * @param pattern The convertion pattern
90 * @param locPattern Indicate whether the pattern is localized or not
91 */
92 public LongLocaleConverter(
93 Locale locale,
94 String pattern,
95 boolean locPattern)
96 {
97 super(locale, pattern, locPattern);
98 }
99
100 /***
101 * Convert the specified locale-sensitive input object into an output object of the
102 * specified type.
103 *
104 * @param type Data type to which this value should be converted
105 * @param value The input object to be converted
106 * @param pattern The pattern is used for the convertion
107 *
108 * @exception ConversionException if conversion cannot be performed
109 * successfully
110 */
111 public Object convert(Class type, Object value, String pattern)
112 {
113 if (value == null)
114 {
115 return null;
116 }
117
118 Number temp = getNumber(value, pattern);
119
120 return (temp instanceof Long) ? (Long)temp : new Long(temp.longValue());
121 }
122
123 }