diff options
| author | warrenl <warrenl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-11-28 03:09:22 +0000 |
|---|---|---|
| committer | warrenl <warrenl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-11-28 03:09:22 +0000 |
| commit | 1fbe90973cde7a3c75bf3d48a0a533c218a635d3 (patch) | |
| tree | 1662df7a9a7114295c1d93c1195edd57cd72c465 /libjava/java/text/DateFormatSymbols.java | |
| parent | e878834be90739f89574a37d8303c85207eaefbc (diff) | |
| download | gcc-1fbe90973cde7a3c75bf3d48a0a533c218a635d3.tar.gz | |
* Makefile.am: Added natTimeZone.cc.
* Makefile.in: Rebuilt.
* gnu/gcj/text/LocaleData_en.java: Added DateFormat entries.
* java/text/DateFormatSymbols.java (ampms): Made package private.
(eras): Made package private.
(months): Made package private.
(shortMonths): Made package private.
(shortWeekdays): Made package private.
(weekdays): Made package private.
(formatPrefixes): New private field.
(localPatternCharsDefault): Made private.
(dateFormats): New package private field.
(timeFormats): New package private field.
(formatsForKey): New private method.
(DateFormatSymbols(Locale)): Set dateFormats and timeFormats.
(DateFormatSymbols(DateFormatSymbols)): Ditto.
* java/text/SimpleDateFormat.java: Merged with Classpath.
* java/util/TimeZone.java: Merged with Classpath.
* java/util/natTimeZone.cc: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37808 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/text/DateFormatSymbols.java')
| -rw-r--r-- | libjava/java/text/DateFormatSymbols.java | 45 |
1 files changed, 38 insertions, 7 deletions
diff --git a/libjava/java/text/DateFormatSymbols.java b/libjava/java/text/DateFormatSymbols.java index b63bf369209..c8250c9344a 100644 --- a/libjava/java/text/DateFormatSymbols.java +++ b/libjava/java/text/DateFormatSymbols.java @@ -24,21 +24,29 @@ import java.util.ResourceBundle; public class DateFormatSymbols extends Object implements java.io.Serializable, Cloneable { - private String[] ampms; - private String[] eras; + String[] ampms; + String[] eras; private String localPatternChars; - private String[] months; - private String[] shortMonths; - private String[] shortWeekdays; - private String[] weekdays; + String[] months; + String[] shortMonths; + String[] shortWeekdays; + String[] weekdays; private String[][] zoneStrings; private static final long serialVersionUID = -5987973545549424702L; + // The order of these prefixes must be the same as in DateFormat + // FIXME: XXX: Note that this differs from the Classpath implemention + // in that there is no "default" entry; that is due to differing + // implementations where DateFormat.DEFAULT is MEDIUM here but 4 in + // Classpath (the JCL says it should be MEDIUM). That will need to be + // resolved in the merge. + private static final String[] formatPrefixes = { "full", "long", "medium", "short" }; + private static final String[] ampmsDefault = {"AM", "PM" }; private static final String[] erasDefault = {"BC", "AD" }; // localPatternCharsDefault is used by SimpleDateFormat. - protected static final String localPatternCharsDefault + private static final String localPatternCharsDefault = "GyMdkHmsSEDFwWahKz"; private static final String[] monthsDefault = { "January", "February", "March", "April", "May", "June", @@ -77,6 +85,24 @@ public class DateFormatSymbols extends Object /**/ "Alaska Daylight Time", "ADT", "Anchorage" } }; + // These are each arrays with a value for SHORT, MEDIUM, LONG, FULL, + // and DEFAULT (constants defined in java.text.DateFormat). While + // not part of the official spec, we need a way to get at locale-specific + // default formatting patterns. They are declared package scope so + // as to be easily accessible where needed (DateFormat, SimpleDateFormat). + transient String[] dateFormats; + transient String[] timeFormats; + + private String[] formatsForKey(ResourceBundle res, String key) + { + String[] values = new String [formatPrefixes.length]; + for (int i = 0; i < formatPrefixes.length; i++) + { + values[i] = res.getString(formatPrefixes[i]+key); + } + return values; + } + private final Object safeGetResource (ResourceBundle res, String key, Object def) { @@ -116,6 +142,9 @@ public class DateFormatSymbols extends Object weekdays = (String[]) safeGetResource (res, "weekdays", weekdaysDefault); zoneStrings = (String[][]) safeGetResource (res, "zoneStrings", zoneStringsDefault); + + dateFormats = formatsForKey(res, "DateFormat"); + timeFormats = formatsForKey(res, "TimeFormat"); } public DateFormatSymbols () @@ -134,6 +163,8 @@ public class DateFormatSymbols extends Object shortWeekdays = old.shortWeekdays; weekdays = old.weekdays; zoneStrings = old.zoneStrings; + dateFormats = old.dateFormats; + timeFormats = old.timeFormats; } public String[] getAmPmStrings() |
