home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / rt.jar / java / text / DateFormat.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  5.2 KB  |  181 lines

  1. package java.text;
  2.  
  3. import java.text.resources.LocaleData;
  4. import java.util.Calendar;
  5. import java.util.Date;
  6. import java.util.Locale;
  7. import java.util.MissingResourceException;
  8. import java.util.ResourceBundle;
  9. import java.util.TimeZone;
  10.  
  11. public abstract class DateFormat extends Format implements Cloneable {
  12.    protected Calendar calendar;
  13.    protected NumberFormat numberFormat;
  14.    public static final int ERA_FIELD = 0;
  15.    public static final int YEAR_FIELD = 1;
  16.    public static final int MONTH_FIELD = 2;
  17.    public static final int DATE_FIELD = 3;
  18.    public static final int HOUR_OF_DAY1_FIELD = 4;
  19.    public static final int HOUR_OF_DAY0_FIELD = 5;
  20.    public static final int MINUTE_FIELD = 6;
  21.    public static final int SECOND_FIELD = 7;
  22.    public static final int MILLISECOND_FIELD = 8;
  23.    public static final int DAY_OF_WEEK_FIELD = 9;
  24.    public static final int DAY_OF_YEAR_FIELD = 10;
  25.    public static final int DAY_OF_WEEK_IN_MONTH_FIELD = 11;
  26.    public static final int WEEK_OF_YEAR_FIELD = 12;
  27.    public static final int WEEK_OF_MONTH_FIELD = 13;
  28.    public static final int AM_PM_FIELD = 14;
  29.    public static final int HOUR1_FIELD = 15;
  30.    public static final int HOUR0_FIELD = 16;
  31.    public static final int TIMEZONE_FIELD = 17;
  32.    private static final long serialVersionUID = 7218322306649953788L;
  33.    public static final int FULL = 0;
  34.    public static final int LONG = 1;
  35.    public static final int MEDIUM = 2;
  36.    public static final int SHORT = 3;
  37.    public static final int DEFAULT = 2;
  38.  
  39.    public final StringBuffer format(Object var1, StringBuffer var2, FieldPosition var3) {
  40.       if (var1 instanceof Number) {
  41.          return this.format(new Date(((Number)var1).longValue()), var2, var3);
  42.       } else if (var1 instanceof Date) {
  43.          return this.format((Date)var1, var2, var3);
  44.       } else {
  45.          throw new IllegalArgumentException("Cannot format given Object as a Date");
  46.       }
  47.    }
  48.  
  49.    public abstract StringBuffer format(Date var1, StringBuffer var2, FieldPosition var3);
  50.  
  51.    public final String format(Date var1) {
  52.       return this.format(var1, new StringBuffer(), new FieldPosition(0)).toString();
  53.    }
  54.  
  55.    public Date parse(String var1) throws ParseException {
  56.       ParsePosition var2 = new ParsePosition(0);
  57.       Date var3 = this.parse(var1, var2);
  58.       if (var2.index == 0) {
  59.          throw new ParseException("Unparseable date: \"" + var1 + "\"", 0);
  60.       } else {
  61.          return var3;
  62.       }
  63.    }
  64.  
  65.    public abstract Date parse(String var1, ParsePosition var2);
  66.  
  67.    public Object parseObject(String var1, ParsePosition var2) {
  68.       return this.parse(var1, var2);
  69.    }
  70.  
  71.    public static final DateFormat getTimeInstance() {
  72.       return get(2, -1, Locale.getDefault());
  73.    }
  74.  
  75.    public static final DateFormat getTimeInstance(int var0) {
  76.       return get(var0, -1, Locale.getDefault());
  77.    }
  78.  
  79.    public static final DateFormat getTimeInstance(int var0, Locale var1) {
  80.       return get(var0, -1, var1);
  81.    }
  82.  
  83.    public static final DateFormat getDateInstance() {
  84.       return get(-1, 6, Locale.getDefault());
  85.    }
  86.  
  87.    public static final DateFormat getDateInstance(int var0) {
  88.       return get(-1, var0 + 4, Locale.getDefault());
  89.    }
  90.  
  91.    public static final DateFormat getDateInstance(int var0, Locale var1) {
  92.       return get(-1, var0 + 4, var1);
  93.    }
  94.  
  95.    public static final DateFormat getDateTimeInstance() {
  96.       return get(2, 6, Locale.getDefault());
  97.    }
  98.  
  99.    public static final DateFormat getDateTimeInstance(int var0, int var1) {
  100.       return get(var1, var0 + 4, Locale.getDefault());
  101.    }
  102.  
  103.    public static final DateFormat getDateTimeInstance(int var0, int var1, Locale var2) {
  104.       return get(var1, var0 + 4, var2);
  105.    }
  106.  
  107.    public static final DateFormat getInstance() {
  108.       return getDateTimeInstance(3, 3);
  109.    }
  110.  
  111.    public static Locale[] getAvailableLocales() {
  112.       return LocaleData.getAvailableLocales("DateTimePatterns");
  113.    }
  114.  
  115.    public void setCalendar(Calendar var1) {
  116.       this.calendar = var1;
  117.    }
  118.  
  119.    public Calendar getCalendar() {
  120.       return this.calendar;
  121.    }
  122.  
  123.    public void setNumberFormat(NumberFormat var1) {
  124.       this.numberFormat = var1;
  125.    }
  126.  
  127.    public NumberFormat getNumberFormat() {
  128.       return this.numberFormat;
  129.    }
  130.  
  131.    public void setTimeZone(TimeZone var1) {
  132.       this.calendar.setTimeZone(var1);
  133.    }
  134.  
  135.    public TimeZone getTimeZone() {
  136.       return this.calendar.getTimeZone();
  137.    }
  138.  
  139.    public void setLenient(boolean var1) {
  140.       this.calendar.setLenient(var1);
  141.    }
  142.  
  143.    public boolean isLenient() {
  144.       return this.calendar.isLenient();
  145.    }
  146.  
  147.    public int hashCode() {
  148.       return this.numberFormat.hashCode();
  149.    }
  150.  
  151.    public boolean equals(Object var1) {
  152.       if (this == var1) {
  153.          return true;
  154.       } else if (var1 != null && this.getClass() == var1.getClass()) {
  155.          DateFormat var2 = (DateFormat)var1;
  156.          return this.calendar.getFirstDayOfWeek() == var2.calendar.getFirstDayOfWeek() && this.calendar.getMinimalDaysInFirstWeek() == var2.calendar.getMinimalDaysInFirstWeek() && this.calendar.isLenient() == var2.calendar.isLenient() && this.calendar.getTimeZone().equals(var2.calendar.getTimeZone()) && this.numberFormat.equals(var2.numberFormat);
  157.       } else {
  158.          return false;
  159.       }
  160.    }
  161.  
  162.    public Object clone() {
  163.       DateFormat var1 = (DateFormat)super.clone();
  164.       var1.calendar = (Calendar)this.calendar.clone();
  165.       var1.numberFormat = (NumberFormat)this.numberFormat.clone();
  166.       return var1;
  167.    }
  168.  
  169.    private static DateFormat get(int var0, int var1, Locale var2) {
  170.       try {
  171.          ResourceBundle.getBundle("java.text.resources.LocaleElements", var2);
  172.          return new SimpleDateFormat(var0, var1, var2);
  173.       } catch (MissingResourceException var3) {
  174.          return new SimpleDateFormat("M/d/yy h:mm a");
  175.       }
  176.    }
  177.  
  178.    protected DateFormat() {
  179.    }
  180. }
  181.