Calendar.java (toString): New method.

* java/util/Calendar.java (toString): New method.
	* java/util/SimpleTimeZone.java (clone): New method.
	(toString): New method.
	* java/util/TimeZone.java (clone): New method.
	* java/text/SimpleDateFormat.java (clone): New method.
	* java/text/NumberFormat.java (clone): New method.
	(equals): New method.
	* java/text/Format.java (clone): New method.
	* java/text/DateFormatSymbols.java (DateFormatSymbols): New
	constructor.
	(clone): New method.
	* java/text/DateFormat.java (clone): New method.
	* java/text/Collator.java (clone): New method.

From-SVN: r31775
This commit is contained in:
Tom Tromey 2000-02-03 18:26:51 +00:00 committed by Tom Tromey
parent 7d3151e1c9
commit 14447d9674
10 changed files with 132 additions and 10 deletions

View File

@ -1,3 +1,19 @@
2000-02-03 Tom Tromey <tromey@cygnus.com>
* java/util/Calendar.java (toString): New method.
* java/util/SimpleTimeZone.java (clone): New method.
(toString): New method.
* java/util/TimeZone.java (clone): New method.
* java/text/SimpleDateFormat.java (clone): New method.
* java/text/NumberFormat.java (clone): New method.
(equals): New method.
* java/text/Format.java (clone): New method.
* java/text/DateFormatSymbols.java (DateFormatSymbols): New
constructor.
(clone): New method.
* java/text/DateFormat.java (clone): New method.
* java/text/Collator.java (clone): New method.
2000-02-03 Tom Tromey <tromey@cygnus.com> 2000-02-03 Tom Tromey <tromey@cygnus.com>
* java/io/PipedOutputStream.java (write(byte[], int, int)): New * java/io/PipedOutputStream.java (write(byte[], int, int)): New

View File

@ -1,6 +1,6 @@
// Collator.java - Locale-sensitive string comparison. // Collator.java - Locale-sensitive string comparison.
/* Copyright (C) 1999 Red Hat, Inc. /* Copyright (C) 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -56,6 +56,11 @@ public abstract class Collator implements Cloneable, Serializable
return compare (source, target) == 0; return compare (source, target) == 0;
} }
public Object clone ()
{
return super.clone ();
}
public static synchronized Locale[] getAvailableLocales () public static synchronized Locale[] getAvailableLocales ()
{ {
// FIXME. // FIXME.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -62,6 +62,12 @@ public abstract class DateFormat extends Format implements Cloneable
return calendar.equals(d.calendar) && numberFormat.equals(d.numberFormat); return calendar.equals(d.calendar) && numberFormat.equals(d.numberFormat);
} }
public Object clone ()
{
// We know the superclass just call's Object's generic cloner.
return super.clone ();
}
public final StringBuffer format (Object obj, public final StringBuffer format (Object obj,
StringBuffer buf, FieldPosition pos) StringBuffer buf, FieldPosition pos)
{ {

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -121,6 +121,19 @@ public class DateFormatSymbols extends Object
this (Locale.getDefault()); this (Locale.getDefault());
} }
// Copy constructor.
private DateFormatSymbols (DateFormatSymbols old)
{
ampms = old.ampms;
eras = old.eras;
localPatternChars = old.localPatternChars;
months = old.months;
shortMonths = old.shortMonths;
shortWeekdays = old.shortWeekdays;
weekdays = old.weekdays;
zoneStrings = old.zoneStrings;
}
public String[] getAmPmStrings() public String[] getAmPmStrings()
{ {
return ampms; return ampms;
@ -251,6 +264,11 @@ public class DateFormatSymbols extends Object
&& equals(zoneStrings, other.zoneStrings)); && equals(zoneStrings, other.zoneStrings));
} }
public Object clone ()
{
return new DateFormatSymbols (this);
}
public int hashCode () public int hashCode ()
{ {
return (hashCode(ampms) return (hashCode(ampms)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -48,4 +48,9 @@ public abstract class Format implements java.io.Serializable, Cloneable
} }
return result; return result;
} }
public Object clone ()
{
return super.clone ();
}
} }

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -50,6 +50,27 @@ public abstract class NumberFormat extends Format implements Cloneable
public abstract StringBuffer format (long number, public abstract StringBuffer format (long number,
StringBuffer sbuf, FieldPosition pos); StringBuffer sbuf, FieldPosition pos);
public Object clone ()
{
// We know the superclass just uses Object's generic cloner.
// Why not just inherit? Because the online docs specify that
// this method exists for this class.
return super.clone ();
}
public boolean equals (Object obj)
{
if (! (obj instanceof NumberFormat))
return false;
NumberFormat nf = (NumberFormat) obj;
return (groupingUsed == nf.groupingUsed
&& maximumFractionDigits == nf.maximumFractionDigits
&& maximumIntegerDigits == nf.maximumIntegerDigits
&& minimumFractionDigits == nf.minimumFractionDigits
&& minimumIntegerDigits == nf.minimumIntegerDigits
&& parseIntegerOnly == nf.parseIntegerOnly);
}
public static Locale[] getAvailableLocales () public static Locale[] getAvailableLocales ()
{ {
// FIXME. // FIXME.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -512,6 +512,12 @@ public class SimpleDateFormat extends DateFormat
other.defaultCenturyStart)); other.defaultCenturyStart));
} }
public Object clone ()
{
// We know the superclass just call's Object's generic cloner.
return super.clone ();
}
public int hashCode () public int hashCode ()
{ {
int hash = super.hashCode(); int hash = super.hashCode();

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -108,6 +108,21 @@ public abstract class Calendar implements java.io.Serializable, Cloneable
} }
} }
public String toString ()
{
// We have much latitude in how we implement this.
return ("areFieldsSet " + areFieldsSet
+ "; fields " + fields
+ "; firstDayOfWeek " + firstDayOfWeek
+ "; isSet " + isSet
+ "; isTimeSet " + isTimeSet
+ "; lenient " + lenient
+ "; minimalDaysInFirstWeek " + minimalDaysInFirstWeek
+ "; nextStamp " + nextStamp
+ "; time " + time
+ "; zone " + zone);
}
public static Calendar getInstance () public static Calendar getInstance ()
{ {
return new GregorianCalendar (); return new GregorianCalendar ();

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -169,6 +169,32 @@ public class SimpleTimeZone extends TimeZone
return getID() == other.getID() && hasSameRules(other); return getID() == other.getID() && hasSameRules(other);
} }
public Object clone ()
{
// We know the superclass just call's Object's generic cloner.
return super.clone ();
}
public String toString ()
{
// The docs don't say much about how we might implement this.
// We choose a debugging implementation.
return ("dstSavings " + dstSavings
+ "; rawOffset " + rawOffset
+ "; startDay " + startDay
+ "; startDayOfWeek " + startDayOfWeek
+ "; startMode " + startMode
+ "; startMonth " + startMonth
+ "; startTime " + startTime
+ "; startYear " + startYear
+ "; endDay " + endDay
+ "; endDayOfWeek " + endDayOfWeek
+ "; endMode " + endMode
+ "; endMonth " + endMonth
+ "; endTime " + endTime
+ "; useDaylight " + useDaylight);
}
public int hashCode () public int hashCode ()
{ {
// FIXME - this does not folow any spec (since none is public)! // FIXME - this does not folow any spec (since none is public)!

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Red Hat, Inc. /* Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
This file is part of libgcj. This file is part of libgcj.
@ -152,7 +152,11 @@ public abstract class TimeZone implements java.io.Serializable, Cloneable
return this == other; return this == other;
} }
// public Object clone (); public Object clone ()
{
// Just use Object's generic cloner.
return super.clone ();
}
// Names of timezones. This array is kept in parallel with // Names of timezones. This array is kept in parallel with
// rawOffsets. This list comes from the JCL 1.1 book. // rawOffsets. This list comes from the JCL 1.1 book.