CollationKey.java: Implement Comparable.

* java/text/CollationKey.java: Implement Comparable.
	(compareTo(Object)): New method.
	* java/text/Collator.java (compare(Object,Object)): New method.
	Implement Comparator.

	* java/util/zip/InflaterInputStream.java (available): New method.
	(close): New method.
	(read, available, skip, fill): Throw exception if stream closed.
	* java/util/zip/ZipInputStream.java (read, skip, readFully, fill,
	getNextEntry): Throw exception if closed.

From-SVN: r37525
This commit is contained in:
Tom Tromey 2000-11-17 20:44:03 +00:00 committed by Tom Tromey
parent 6414587c8b
commit 4cdfd292e3
5 changed files with 78 additions and 10 deletions

View File

@ -1,3 +1,32 @@
2000-11-17 Tom Tromey <tromey@cygnus.com>
* java/text/CollationKey.java: Implement Comparable.
(compareTo(Object)): New method.
* java/text/Collator.java (compare(Object,Object)): New method.
Implement Comparator.
* java/util/zip/InflaterInputStream.java (available): New method.
(close): New method.
(read, available, skip, fill): Throw exception if stream closed.
* java/util/zip/ZipInputStream.java (read, skip, readFully, fill,
getNextEntry): Throw exception if closed.
2000-11-16 Tom Tromey <tromey@cygnus.com>
* java/io/PushbackReader.java: Merged with Classpath.
* java/util/Arrays.java: Updated from Classpath.
* scripts/blocks.pl: New file.
* java/lang/Character.java (Subset): New class.
(UnicodeBlock): New class.
* java/lang/Math.java (toDegrees, toRadians): New methods.
* java/lang/Float.java: Implement Comparable.
(compareTo): New methods.
* java/lang/Double.java: Implement Comparable.
(compareTo): New methods.
2000-11-16 Warren Levy <warrenl@cygnus.com>
* java/beans/PropertyChangeSupport.java (propertyListeners): Made

View File

@ -1,6 +1,6 @@
// CollationKey.java - Sort key for locale-sensitive String.
/* Copyright (C) 1999 Free Software Foundation
/* Copyright (C) 1999, 2000 Free Software Foundation
This file is part of libgcj.
@ -19,7 +19,7 @@ package java.text;
* Status: Believed complete and correct.
*/
public final class CollationKey
public final class CollationKey implements Comparable
{
public int compareTo (CollationKey target)
{
@ -34,6 +34,11 @@ public final class CollationKey
return key.length - target.key.length;
}
public int compareTo (Object o)
{
return compareTo ((CollationKey) o);
}
public boolean equals (Object obj)
{
if (! (obj instanceof CollationKey))

View File

@ -13,6 +13,7 @@ package java.text;
import java.util.Locale;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import java.util.Comparator;
/**
* @author Tom Tromey <tromey@cygnus.com>
@ -23,7 +24,7 @@ import java.util.ResourceBundle;
* Status: Mostly complete, but parts stubbed out. Look for FIXME.
*/
public abstract class Collator implements Cloneable
public abstract class Collator implements Comparator, Cloneable
{
public static final int NO_DECOMPOSITION = 0;
public static final int CANONICAL_DECOMPOSITION = 1;
@ -42,6 +43,11 @@ public abstract class Collator implements Cloneable
public abstract int compare (String source, String target);
public int compare (Object o1, Object o2)
{
return compare ((String) o1, (String) o2);
}
public boolean equals (Object obj)
{
if (! (obj instanceof Collator))

View File

@ -1,6 +1,6 @@
// InflaterInputStream.java - Input stream filter for decompressing.
/* Copyright (C) 1999 Free Software Foundation
/* Copyright (C) 1999, 2000 Free Software Foundation
This file is part of libgcj.
@ -28,6 +28,8 @@ public class InflaterInputStream extends FilterInputStream
{
protected void fill () throws IOException
{
if (inf == null)
throw new IOException ("stream closed");
len = in.read(buf, 0, buf.length);
if (len != -1)
inf.setInput(buf, 0, len);
@ -61,6 +63,8 @@ public class InflaterInputStream extends FilterInputStream
public int read (byte[] buf, int off, int len) throws IOException
{
if (inf == null)
throw new IOException ("stream closed");
if (inf.finished())
return -1;
if (inf.needsInput())
@ -79,8 +83,26 @@ public class InflaterInputStream extends FilterInputStream
}
}
public void close () throws IOException
{
inf = null;
super.close ();
}
public int available () throws IOException
{
// According to the JDK 1.2 docs, this should only ever return 0
// or 1 and should not be relied upon by Java programs.
if (inf == null)
throw new IOException ("stream closed");
return inf.finished () ? 0 : 1;
}
public long skip (long n) throws IOException
{
if (inf == null)
throw new IOException ("stream closed");
if (n == 0)
return 0;

View File

@ -35,6 +35,8 @@ public class ZipInputStream extends InflaterInputStream implements ZipConstants
public ZipEntry getNextEntry () throws IOException
{
if (closed)
throw new IOException ("stream closed");
if (current != null)
closeEntry();
if (in.read() != 'P'
@ -112,6 +114,8 @@ public class ZipInputStream extends InflaterInputStream implements ZipConstants
// back data.
protected void fill () throws IOException
{
if (closed)
throw new IOException ("stream closed");
int count = buf.length;
if (count > compressed_bytes)
count = compressed_bytes;
@ -127,9 +131,11 @@ public class ZipInputStream extends InflaterInputStream implements ZipConstants
{
return new ZipEntry (name);
}
public int read (byte[] b, int off, int len) throws IOException
{
if (closed)
throw new IOException ("stream closed");
if (len > avail)
len = avail;
int count;
@ -149,6 +155,8 @@ public class ZipInputStream extends InflaterInputStream implements ZipConstants
public long skip (long n) throws IOException
{
if (closed)
throw new IOException ("stream closed");
if (n > avail)
n = avail;
long count;
@ -160,11 +168,9 @@ public class ZipInputStream extends InflaterInputStream implements ZipConstants
return count;
}
public int available() {
if (closed)
return 0;
else
return 1;
public int available()
{
return closed ? 0 : 1;
}
private void readFully (byte[] b) throws IOException