home *** CD-ROM | disk | FTP | other *** search
- package java.text;
-
- import java.io.Serializable;
- import java.util.Hashtable;
- import java.util.Locale;
- import java.util.ResourceBundle;
-
- public class DateFormatSymbols implements Serializable, Cloneable {
- String[] eras;
- String[] months;
- String[] shortMonths;
- String[] weekdays;
- String[] shortWeekdays;
- String[] ampms;
- String[][] zoneStrings;
- static final String patternChars = "GyMdkHmsSEDFwWahKz";
- String localPatternChars;
- static final long serialVersionUID = -5987973545549424702L;
- static final int millisPerHour = 3600000;
- private static final Hashtable cachedLocaleData = new Hashtable(3);
-
- public DateFormatSymbols() {
- this.initializeData(Locale.getDefault());
- }
-
- public DateFormatSymbols(Locale var1) {
- this.initializeData(var1);
- }
-
- public String[] getEras() {
- return this.duplicate(this.eras);
- }
-
- public void setEras(String[] var1) {
- this.eras = this.duplicate(var1);
- }
-
- public String[] getMonths() {
- return this.duplicate(this.months);
- }
-
- public void setMonths(String[] var1) {
- this.months = this.duplicate(var1);
- }
-
- public String[] getShortMonths() {
- return this.duplicate(this.shortMonths);
- }
-
- public void setShortMonths(String[] var1) {
- this.shortMonths = this.duplicate(var1);
- }
-
- public String[] getWeekdays() {
- return this.duplicate(this.weekdays);
- }
-
- public void setWeekdays(String[] var1) {
- this.weekdays = this.duplicate(var1);
- }
-
- public String[] getShortWeekdays() {
- return this.duplicate(this.shortWeekdays);
- }
-
- public void setShortWeekdays(String[] var1) {
- this.shortWeekdays = this.duplicate(var1);
- }
-
- public String[] getAmPmStrings() {
- return this.duplicate(this.ampms);
- }
-
- public void setAmPmStrings(String[] var1) {
- this.ampms = this.duplicate(var1);
- }
-
- public String[][] getZoneStrings() {
- String[][] var1 = new String[this.zoneStrings.length][];
-
- for(int var2 = 0; var2 < this.zoneStrings.length; ++var2) {
- var1[var2] = this.duplicate(this.zoneStrings[var2]);
- }
-
- return var1;
- }
-
- public void setZoneStrings(String[][] var1) {
- String[][] var2 = new String[var1.length][];
-
- for(int var3 = 0; var3 < var1.length; ++var3) {
- var2[var3] = this.duplicate(var1[var3]);
- }
-
- this.zoneStrings = var2;
- }
-
- public String getLocalPatternChars() {
- return new String(this.localPatternChars);
- }
-
- public void setLocalPatternChars(String var1) {
- this.localPatternChars = new String(var1);
- }
-
- public Object clone() {
- try {
- DateFormatSymbols var1 = (DateFormatSymbols)super.clone();
- this.copyMembers(this, var1);
- return var1;
- } catch (CloneNotSupportedException var2) {
- throw new InternalError();
- }
- }
-
- public int hashCode() {
- int var1 = 0;
-
- for(int var2 = 0; var2 < this.zoneStrings[0].length; ++var2) {
- var1 ^= this.zoneStrings[0][var2].hashCode();
- }
-
- return var1;
- }
-
- public boolean equals(Object var1) {
- if (this == var1) {
- return true;
- } else if (var1 != null && this.getClass() == var1.getClass()) {
- DateFormatSymbols var2 = (DateFormatSymbols)var1;
- return Utility.arrayEquals(this.eras, var2.eras) && Utility.arrayEquals(this.months, var2.months) && Utility.arrayEquals(this.shortMonths, var2.shortMonths) && Utility.arrayEquals(this.weekdays, var2.weekdays) && Utility.arrayEquals(this.shortWeekdays, var2.shortWeekdays) && Utility.arrayEquals(this.ampms, var2.ampms) && Utility.arrayEquals(this.zoneStrings, var2.zoneStrings) && Utility.arrayEquals(this.localPatternChars, var2.localPatternChars);
- } else {
- return false;
- }
- }
-
- private void initializeData(Locale var1) {
- ResourceBundle[] var5 = (ResourceBundle[])cachedLocaleData.get(var1);
- if (var5 == null) {
- var5 = new ResourceBundle[]{ResourceBundle.getBundle("java.text.resources.LocaleElements", var1), ResourceBundle.getBundle("java.text.resources.DateFormatZoneData", var1)};
- cachedLocaleData.put(var1, var5);
- }
-
- ResourceBundle var3 = var5[0];
- ResourceBundle var4 = var5[1];
- this.eras = (String[])var3.getObject("Eras");
- this.months = var3.getStringArray("MonthNames");
- this.shortMonths = var3.getStringArray("MonthAbbreviations");
- String[] var6 = var3.getStringArray("DayNames");
- this.weekdays = new String[8];
- this.weekdays[0] = "";
-
- for(int var2 = 0; var2 < var6.length; ++var2) {
- this.weekdays[var2 + 1] = var6[var2];
- }
-
- String[] var7 = var3.getStringArray("DayAbbreviations");
- this.shortWeekdays = new String[8];
- this.shortWeekdays[0] = "";
-
- for(int var8 = 0; var8 < var7.length; ++var8) {
- this.shortWeekdays[var8 + 1] = var7[var8];
- }
-
- this.ampms = var3.getStringArray("AmPmMarkers");
- this.zoneStrings = (String[][])var4.getObject("zoneStrings");
- this.localPatternChars = (String)var4.getObject("localPatternChars");
- }
-
- final int getZoneIndex(String var1) {
- for(int var2 = 0; var2 < this.zoneStrings.length; ++var2) {
- if (var1.equalsIgnoreCase(this.zoneStrings[var2][0])) {
- return var2;
- }
- }
-
- return -1;
- }
-
- private final String[] duplicate(String[] var1) {
- String[] var2 = new String[var1.length];
- System.arraycopy(var1, 0, var2, 0, var1.length);
- return var2;
- }
-
- private final void copyMembers(DateFormatSymbols var1, DateFormatSymbols var2) {
- var2.eras = this.duplicate(var1.eras);
- var2.months = this.duplicate(var1.months);
- var2.shortMonths = this.duplicate(var1.shortMonths);
- var2.weekdays = this.duplicate(var1.weekdays);
- var2.shortWeekdays = this.duplicate(var1.shortWeekdays);
- var2.ampms = this.duplicate(var1.ampms);
-
- for(int var3 = 0; var3 < var2.zoneStrings.length; ++var3) {
- var2.zoneStrings[var3] = this.duplicate(var1.zoneStrings[var3]);
- }
-
- var2.localPatternChars = new String(var1.localPatternChars);
- }
-
- private final boolean equals(String[] var1, String[] var2) {
- int var3 = var1.length;
-
- for(int var4 = 0; var4 < var3; ++var4) {
- if (!var1[var4].equals(var2[var4])) {
- return false;
- }
- }
-
- return true;
- }
- }
-