1 /*
2 * The SmartWeb Framework
3 * Copyright (C) 2004-2006
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 *
19 * For further informations on the SmartWeb Framework please visit
20 *
21 * http://smartweb.sourceforge.net
22 */
23
24 package net.smartlab.web.bean;
25
26 import java.util.Locale;
27
28 /**
29 * TODO documentation
30 *
31 * @author rlogiacco
32 */
33 public class LongConverter extends NumberConverter {
34
35 /**
36 * TODO documentation
37 */
38 public LongConverter() {
39 super();
40 }
41
42 /**
43 * TODO documentation
44 *
45 * @param value
46 */
47 public LongConverter(long value) {
48 super(value);
49 }
50
51 /**
52 * @see net.smartlab.web.bean.Converter#convert(java.lang.Class,
53 * java.lang.Object, java.util.Locale)
54 */
55 public Object convert(Class type, Object value, Locale locale) throws ConversionException {
56 if (type.equals(Long.class) || type.equals(Long.TYPE)) {
57 try {
58 return Long.valueOf(value.toString());
59 } catch (NumberFormatException nfe) {
60 if (super.hasDefault()) {
61 return new Long((long)this.getDefault());
62 }
63 throw new ConversionException(nfe);
64 }
65 } else {
66 return value.toString();
67 }
68 }
69
70 }