diff options
author | Warren Levy <warrenl@cygnus.com> | 2000-10-10 23:09:08 +0000 |
---|---|---|
committer | Warren Levy <warrenl@gcc.gnu.org> | 2000-10-10 23:09:08 +0000 |
commit | 01ce962b942349db572123054f5a352d5c51f222 (patch) | |
tree | 73981b1d015f53aedc47744c8b4d7eb03d1d690b /libjava/java/text/NumberFormat.java | |
parent | 2e165c53deb61806019c4a72f006abaa1c2379b3 (diff) | |
download | gcc-01ce962b942349db572123054f5a352d5c51f222.zip gcc-01ce962b942349db572123054f5a352d5c51f222.tar.gz gcc-01ce962b942349db572123054f5a352d5c51f222.tar.bz2 |
LocaleData_en.java (monetarySeparator): Added.
* gnu/gcj/text/LocaleData_en.java (monetarySeparator): Added.
* java/sql/Date.java (serialVersionUID): New field.
* java/sql/Time.java (serialVersionUID): New field.
* java/sql/Timestamp.java (serialVersionUID): New field.
* java/text/ChoiceFormat.java (serialVersionUID): New field.
* java/text/DateFormat.java (getDateTimeInstance (int)): Removed.
* java/text/DateFormatSymbols.java (serialVersionUID): New field.
* java/text/DecimalFormat.java (serialVersionOnStream): New field.
(readObject): New serialization method.
* java/text/DecimalFormatSymbols.java (monetarySeparator): New field.
(serialVersionOnStream): New field.
(readObject): New serialization method.
(getMonetaryDecimalSeparator): New method.
(setMonetaryDecimalSeparator): New method.
* java/text/NumberFormat.java (maxFractionDigits): New field.
(maxIntegerDigits): New field.
(minFractionDigits): New field.
(minIntegerDigits): New field.
(serialVersionOnStream): New field.
(serialVersionUID): New field.
(readObject): New serialization method.
(writeObject): New serialization method.
* java/text/SimpleDateFormat.java (defaultCenturyStart): Initialized.
(serialVersionOnStream): New field.
(serialVersionUID): New field.
(readObject): New serialization method.
Serialization mods.
From-SVN: r36831
Diffstat (limited to 'libjava/java/text/NumberFormat.java')
-rw-r--r-- | libjava/java/text/NumberFormat.java | 43 |
1 files changed, 38 insertions, 5 deletions
diff --git a/libjava/java/text/NumberFormat.java b/libjava/java/text/NumberFormat.java index 3a30010..f3f36e9 100644 --- a/libjava/java/text/NumberFormat.java +++ b/libjava/java/text/NumberFormat.java @@ -11,6 +11,9 @@ package java.text; import java.util.Locale; import java.util.ResourceBundle; import java.util.MissingResourceException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.io.IOException; /** * @author Tom Tromey <tromey@cygnus.com> @@ -18,8 +21,7 @@ import java.util.MissingResourceException; */ /* Written using "Java Class Libraries", 2nd edition, plus online * API docs for JDK 1.2 from http://www.javasoft.com. - * Status: Believed complete and correct to 1.2, except serialization - * and getAvailableLocales. + * Status: Believed complete and correct to 1.2, except getAvailableLocales. */ public abstract class NumberFormat extends Format implements Cloneable @@ -249,13 +251,44 @@ public abstract class NumberFormat extends Format implements Cloneable } // These field names are fixed by the serialization spec. - // FIXME: serialization spec also mentions `byte' versions of the - // min/max fields. We have no use for those, so for now they are - // omitted. protected boolean groupingUsed; protected int maximumFractionDigits; + private byte maxFractionDigits; protected int maximumIntegerDigits; + private byte maxIntegerDigits; protected int minimumFractionDigits; + private byte minFractionDigits; protected int minimumIntegerDigits; + private byte minIntegerDigits; protected boolean parseIntegerOnly; + private int serialVersionOnStream; + private static final long serialVersionUID = -2308460125733713944L; + + private void readObject(ObjectInputStream stream) + throws IOException, ClassNotFoundException + { + stream.defaultReadObject(); + if (serialVersionOnStream < 1) + { + maximumFractionDigits = maxFractionDigits; + maximumIntegerDigits = maxIntegerDigits; + minimumFractionDigits = minFractionDigits; + minimumIntegerDigits = minIntegerDigits; + serialVersionOnStream = 1; + } + } + + private void writeObject(ObjectOutputStream stream) throws IOException + { + maxFractionDigits = maximumFractionDigits < Byte.MAX_VALUE ? + (byte) maximumFractionDigits : Byte.MAX_VALUE; + maxIntegerDigits = maximumIntegerDigits < Byte.MAX_VALUE ? + (byte) maximumIntegerDigits : Byte.MAX_VALUE; + minFractionDigits = minimumFractionDigits < Byte.MAX_VALUE ? + (byte) minimumFractionDigits : Byte.MAX_VALUE; + minIntegerDigits = minimumIntegerDigits < Byte.MAX_VALUE ? + (byte) minimumIntegerDigits : Byte.MAX_VALUE; + serialVersionOnStream = 1; + stream.defaultWriteObject(); + } } |