Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039 package de.mfuchs.xmlstorage;
00040
00041 import java.math.BigDecimal;
00042
00043 import de.mfuchs.xmlstorage.stream.XMLStreamReader;
00044
00045
00046
00047
00048
00049 public class XMLNumber
00050 {
00051 public XMLNumber(BigDecimal value)
00052 {
00053 _value = value;
00054 }
00055
00056 public XMLNumber(final String value)
00057 {
00058 this(value, new BigDecimal(0.));
00059 }
00060
00061 public XMLNumber(final String value, BigDecimal def)
00062 {
00063 if (value!=null && value.length()>0)
00064 _value = new BigDecimal(value);
00065 else
00066 _value = def;
00067 }
00068
00069
00070 public XMLNumber(final AbstractXMLNode node, final String attrName)
00071 {
00072 this(node, attrName, new BigDecimal(0.));
00073 }
00074
00075 public XMLNumber(final XMLPos pos, final String attrName)
00076 {
00077 this(pos.cur(), attrName, new BigDecimal(0.));
00078 }
00079
00080 public XMLNumber(final XMLPos pos, final String attrName, BigDecimal def)
00081 {
00082 this(pos.cur(), attrName, def);
00083 }
00084
00085 public XMLNumber(final XMLStreamReader reader, final String attrName)
00086 {
00087 this(reader.getNode(), attrName, new BigDecimal(0.));
00088 }
00089
00090 public XMLNumber(final XMLStreamReader reader, final String attrName, BigDecimal def)
00091 {
00092 this(reader.getNode(), attrName, def);
00093 }
00094
00095
00096 public XMLNumber(final AbstractXMLNode node, final String attrName, BigDecimal def)
00097 {
00098 final String value = node.get(attrName);
00099
00100 if (value.length() > 0)
00101 _value = new BigDecimal(value);
00102 else
00103 _value = def;
00104 }
00105
00106 public BigDecimal bigDecimalValue()
00107 {
00108 return _value;
00109 }
00110
00111 public String toString()
00112 {
00113 return String.valueOf(_value);
00114 }
00115
00116 protected BigDecimal _value;
00117 }