01: /*
02: * The contents of this file are subject to the Sapient Public License
03: * Version 1.0 (the "License"); you may not use this file except in compliance
04: * with the License. You may obtain a copy of the License at
05: * http://carbon.sf.net/License.html.
06: *
07: * Software distributed under the License is distributed on an "AS IS" basis,
08: * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
09: * the specific language governing rights and limitations under the License.
10: *
11: * The Original Code is The Carbon Component Framework.
12: *
13: * The Initial Developer of the Original Code is Sapient Corporation
14: *
15: * Copyright (C) 2003 Sapient Corporation. All Rights Reserved.
16: */
17:
18: package org.sape.carbon.core.config.type.handlers;
19:
20: import org.sape.carbon.core.config.type.ConfigurationTypeHandler;
21: import org.sape.carbon.core.config.type.TypeConversionException;
22:
23: /**
24: * <P>Parses and formats between Strings and Doubles.</P>
25: *
26: * Copyright 2002 Sapient
27: * @since carbon 1.0
28: * @author Greg Hinkle, January 2002
29: * @version $Revision: 1.11 $($Author: dvoet $ / $Date: 2003/05/05 21:21:20 $)
30: */
31: public class DoubleTypeHandler implements ConfigurationTypeHandler {
32:
33: /**
34: * <P>Parses a string into a Double object.</P>
35: *
36: * @param stringValue the String representation of the requested Double
37: * @param type String
38: * @return Double version of the String
39: * @throws TypeConversionException when the string does not represent
40: * a valid Double
41: */
42: public Object toObject(Class type, String stringValue)
43: throws TypeConversionException {
44:
45: Double object = null;
46: try {
47: object = Double.valueOf(stringValue);
48: } catch (NumberFormatException nfe) {
49: throw new TypeConversionException(this .getClass(),
50: "Couldn't format", nfe);
51: } catch (NullPointerException npe) {
52: throw new TypeConversionException(this .getClass(),
53: "Couldn't format", npe);
54: }
55: return object;
56: }
57:
58: /**
59: * <P>Formats an Double into a String value.</P>
60: *
61: * @param objectValue the Double to be formatted
62: * @return String value of the Double
63: * @throws ClassCastException when past an object other than a Double
64: */
65: public String toString(Object objectValue) {
66: return ((Double) objectValue).toString();
67: }
68:
69: }
|