[multiple changes]

2005-11-17  Mark Wielaard  <mark@klomp.org>

       * java/text/SimpleDateFormat.java: Removed, fully merged now.
       * sources.am: Regenerated.
       * Makefile.in: Regenerated.

2005-11-17  Sven de Marothy  <sven@physto.se>

       * java/text/SimpleDateFormat.java
       (computeOffset): Allow timezone to be first in the parsed String.

2005-11-17  Mark Wielaard  <mark@klomp.org>

       * java/text/SimpleDateFormat.java (field, size): Make package private.

2005-11-17  Tom Tromey  <tromey@redhat.com>

       * java/text/SimpleDateFormat.java (compileFormat): Correctly
       handle quoted single quotes.  PR classspath/23183.

2005-11-17  Tom Tromey  <tromey@redhat.com>

       * java/text/SimpleDateFormat.java (compileFormat): Reformatted.

2005-11-17  Tom Tromey  <tromey@redhat.com>

       * java/text/DateFormat.java (serialVersionUID): New field.

2005-11-17  Mark Wielaard  <mark@klomp.org>

       * java/text/DateFormat.java (equals): Reimplement.

2005-11-17  David Gilbert  <david.gilbert@object-refinery.com>

       * java/text/Collator.java: API doc fixes,
       * java/text/DateFormat.java: likewise,
       * java/text/DecimalFormatSymbols.java: likewise,
       * java/text/DateFormatSymbols.java: likewise,
       * java/text/SimpleDateFormat.java: likewise.

2005-11-17  Jeroen Frijters  <jeroen@frijters.net>

       * java/text/Collator.java (getInstance(Locale)):
       Added default collation pattern to handle case when resource
       is missing and throw InternalError instead of returning null
       should parsing fail.

From-SVN: r107121
This commit is contained in:
Mark Wielaard 2005-11-17 14:03:22 +00:00
parent b424a57253
commit 035db16b87
8 changed files with 132 additions and 1293 deletions

View file

@ -58,6 +58,9 @@ import java.util.TimeZone;
public abstract class DateFormat extends Format implements Cloneable
{
private static final long serialVersionUID = 7218322306649953788L;
// Names fixed by serialization spec.
protected Calendar calendar;
protected NumberFormat numberFormat;
@ -405,8 +408,18 @@ public abstract class DateFormat extends Format implements Cloneable
* <ul>
* <li>Is not <code>null</code>.</li>
* <li>Is an instance of <code>DateFormat</code>.</li>
* <li>Has the same numberFormat field value as this object.</li>
* <li>Has equal numberFormat field as this object.</li>
* <li>Has equal (Calendar) TimeZone rules as this object.</li>
* <li>Has equal (Calendar) isLenient results.</li>
* <li>Has equal Calendar first day of week and minimal days in week
* values.</li>
* </ul>
* Note that not all properties of the Calendar are relevant for a
* DateFormat. For formatting only the fact whether or not the
* TimeZone has the same rules and whether the calendar is lenient
* and has the same week rules is compared for this implementation
* of equals. Other properties of the Calendar (such as the time)
* are not taken into account.
*
* @param obj The object to test for equality against.
*
@ -419,8 +432,24 @@ public abstract class DateFormat extends Format implements Cloneable
return false;
DateFormat d = (DateFormat) obj;
TimeZone tz = getTimeZone();
TimeZone tzd = d.getTimeZone();
if (tz.hasSameRules(tzd))
if (isLenient() == d.isLenient())
{
Calendar c = getCalendar();
Calendar cd = d.getCalendar();
if ((c == null && cd == null)
||
(c.getFirstDayOfWeek() == cd.getFirstDayOfWeek()
&&
c.getMinimalDaysInFirstWeek()
== cd.getMinimalDaysInFirstWeek()))
return ((numberFormat == null && d.numberFormat == null)
|| numberFormat.equals(d.numberFormat));
}
return numberFormat.equals(d.numberFormat);
return false;
}
/**
@ -442,9 +471,9 @@ public abstract class DateFormat extends Format implements Cloneable
* thrown.
*
* @param obj The <code>Object</code> to format.
* @param toAppendTo The <code>StringBuffer</code> to append the resultant
* @param buf The <code>StringBuffer</code> to append the resultant
* <code>String</code> to.
* @param fieldPosition Is updated to the start and end index of the
* @param pos Is updated to the start and end index of the
* specified field.
*
* @return The <code>StringBuffer</code> supplied on input, with the
@ -479,9 +508,9 @@ public abstract class DateFormat extends Format implements Cloneable
* to the specified <code>StringBuffer</code>.
*
* @param date The <code>Date</code> value to format.
* @param toAppendTo The <code>StringBuffer</code> to append the resultant
* @param buf The <code>StringBuffer</code> to append the resultant
* <code>String</code> to.
* @param fieldPosition Is updated to the start and end index of the
* @param pos Is updated to the start and end index of the
* specified field.
*
* @return The <code>StringBuffer</code> supplied on input, with the
@ -646,7 +675,7 @@ public abstract class DateFormat extends Format implements Cloneable
* localed will be used in place of the default.
*
* @param style The type of formatting to perform.
* @param aLocale The desired locale.
* @param loc The desired locale.
*
* @return A new <code>DateFormat</code> instance.
*/
@ -747,7 +776,7 @@ public abstract class DateFormat extends Format implements Cloneable
* localed will be used in place of the default.
*
* @param style The type of formatting to perform.
* @param aLocale The desired locale.
* @param loc The desired locale.
*
* @return A new <code>DateFormat</code> instance.
*/
@ -821,7 +850,7 @@ public abstract class DateFormat extends Format implements Cloneable
* starting parse position on method entry and the ending parse
* position on method exit.
*
* @param text The string to parse.
* @param source The string to parse.
* @param pos The starting parse position in entry, the ending parse
* position on exit.
*
@ -851,7 +880,7 @@ public abstract class DateFormat extends Format implements Cloneable
* This method specified the <code>Calendar</code> that should be used
* by this object to parse/format datetimes.
*
* @param The new <code>Calendar</code> for this object.
* @param calendar The new <code>Calendar</code> for this object.
*
* @see java.util.Calendar
*/
@ -876,7 +905,7 @@ public abstract class DateFormat extends Format implements Cloneable
* This method specifies the <code>NumberFormat</code> object that should
* be used by this object to parse/format times.
*
* @param The <code>NumberFormat</code> in use by this object.
* @param numberFormat The <code>NumberFormat</code> in use by this object.
*/
public void setNumberFormat (NumberFormat numberFormat)
{
@ -886,7 +915,7 @@ public abstract class DateFormat extends Format implements Cloneable
/**
* This method sets the time zone that should be used by this object.
*
* @param The new time zone.
* @param timeZone The new time zone.
*/
public void setTimeZone (TimeZone timeZone)
{