KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > commons > beanutils > locale > converters > DoubleLocaleConverter


1 /*
2  * Copyright 2001-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16
17 package org.apache.commons.beanutils.locale.converters;
18
19
20 import java.text.ParseException JavaDoc;
21 import java.util.Locale JavaDoc;
22
23
24 /**
25  * <p>Standard {@link org.apache.commons.beanutils.locale.LocaleConverter}
26  * implementation that converts an incoming
27  * locale-sensitive String into a <code>java.lang.Double</code> object,
28  * optionally using a default value or throwing a
29  * {@link org.apache.commons.beanutils.ConversionException}
30  * if a conversion error occurs.</p>
31  *
32  * @author Yauheny Mikulski
33  */

34
35 public class DoubleLocaleConverter extends DecimalLocaleConverter {
36
37
38     // ----------------------------------------------------------- Constructors
39

40     /**
41      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
42      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
43      * if a conversion error occurs. The locale is the default locale for
44      * this instance of the Java Virtual Machine and an unlocalized pattern is used
45      * for the convertion.
46      *
47      */

48     public DoubleLocaleConverter() {
49
50         this(false);
51     }
52
53     /**
54      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
55      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
56      * if a conversion error occurs. The locale is the default locale for
57      * this instance of the Java Virtual Machine.
58      *
59      * @param locPattern Indicate whether the pattern is localized or not
60      */

61     public DoubleLocaleConverter(boolean locPattern) {
62
63         this(Locale.getDefault(), locPattern);
64     }
65
66     /**
67      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
68      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
69      * if a conversion error occurs. An unlocalized pattern is used for the convertion.
70      *
71      * @param locale The locale
72      */

73     public DoubleLocaleConverter(Locale JavaDoc locale) {
74
75         this(locale, false);
76     }
77
78     /**
79      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
80      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
81      * if a conversion error occurs.
82      *
83      * @param locale The locale
84      * @param locPattern Indicate whether the pattern is localized or not
85      */

86     public DoubleLocaleConverter(Locale JavaDoc locale, boolean locPattern) {
87
88         this(locale, (String JavaDoc) null, locPattern);
89     }
90
91     /**
92      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
93      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
94      * if a conversion error occurs. An unlocalized pattern is used for the convertion.
95      *
96      * @param locale The locale
97      * @param pattern The convertion pattern
98      */

99     public DoubleLocaleConverter(Locale JavaDoc locale, String JavaDoc pattern) {
100
101         this(locale, pattern, false);
102     }
103
104     /**
105      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
106      * that will throw a {@link org.apache.commons.beanutils.ConversionException}
107      * if a conversion error occurs.
108      *
109      * @param locale The locale
110      * @param pattern The convertion pattern
111      * @param locPattern Indicate whether the pattern is localized or not
112      */

113     public DoubleLocaleConverter(Locale JavaDoc locale, String JavaDoc pattern, boolean locPattern) {
114
115         super(locale, pattern, locPattern);
116     }
117
118     /**
119      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
120      * that will return the specified default value
121      * if a conversion error occurs. The locale is the default locale for
122      * this instance of the Java Virtual Machine and an unlocalized pattern is used
123      * for the convertion.
124      *
125      * @param defaultValue The default value to be returned
126      */

127     public DoubleLocaleConverter(Object JavaDoc defaultValue) {
128
129         this(defaultValue, false);
130     }
131
132     /**
133      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
134      * that will return the specified default value
135      * if a conversion error occurs. The locale is the default locale for
136      * this instance of the Java Virtual Machine.
137      *
138      * @param defaultValue The default value to be returned
139      * @param locPattern Indicate whether the pattern is localized or not
140      */

141     public DoubleLocaleConverter(Object JavaDoc defaultValue, boolean locPattern) {
142
143         this(defaultValue, Locale.getDefault(), locPattern);
144     }
145
146     /**
147      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
148      * that will return the specified default value
149      * if a conversion error occurs. An unlocalized pattern is used for the convertion.
150      *
151      * @param defaultValue The default value to be returned
152      * @param locale The locale
153      */

154     public DoubleLocaleConverter(Object JavaDoc defaultValue, Locale JavaDoc locale) {
155
156         this(defaultValue, locale, false);
157     }
158
159     /**
160      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
161      * that will return the specified default value
162      * if a conversion error occurs.
163      *
164      * @param defaultValue The default value to be returned
165      * @param locale The locale
166      * @param locPattern Indicate whether the pattern is localized or not
167      */

168     public DoubleLocaleConverter(Object JavaDoc defaultValue, Locale JavaDoc locale, boolean locPattern) {
169
170         this(defaultValue, locale, null, locPattern);
171     }
172
173     /**
174      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
175      * that will return the specified default value
176      * if a conversion error occurs. An unlocalized pattern is used for the convertion.
177      *
178      * @param defaultValue The default value to be returned
179      * @param locale The locale
180      * @param pattern The convertion pattern
181      */

182     public DoubleLocaleConverter(Object JavaDoc defaultValue, Locale JavaDoc locale, String JavaDoc pattern) {
183
184         this(defaultValue, locale, pattern, false);
185     }
186
187     /**
188      * Create a {@link org.apache.commons.beanutils.locale.LocaleConverter}
189      * that will return the specified default value
190      * if a conversion error occurs.
191      *
192      * @param defaultValue The default value to be returned
193      * @param locale The locale
194      * @param pattern The convertion pattern
195      * @param locPattern Indicate whether the pattern is localized or not
196      */

197     public DoubleLocaleConverter(Object JavaDoc defaultValue, Locale JavaDoc locale, String JavaDoc pattern, boolean locPattern) {
198
199         super(defaultValue, locale, pattern);
200     }
201
202     protected Object JavaDoc parse(Object JavaDoc value, String JavaDoc pattern) throws ParseException JavaDoc {
203         Number JavaDoc result = (Number JavaDoc) super.parse(value, pattern);
204         if (result instanceof Long JavaDoc) {
205             return new Double JavaDoc(result.doubleValue());
206         } else {
207             return (result);
208         }
209     }
210
211
212 }
213
214
215
Popular Tags