1.3-Compliant Implementation of java.io.File.
authorBryce McKinlay <bryce@albatross.co.nz>
Sun, 1 Apr 2001 11:16:40 +0000 (11:16 +0000)
committerBryce McKinlay <bryce@gcc.gnu.org>
Sun, 1 Apr 2001 11:16:40 +0000 (12:16 +0100)
commitf40475404235a392b16bb7db048fc18c56af3604
tree64ffcb42dcabba681035f83df8bad41e16ad89de
parente74061a981cd8d62e366c6bc96454250e7da0450
1.3-Compliant Implementation of java.io.File.

* java/lang/natSystem.cc (init_properties): Get "file.separator",
"path.separator", and "java.io.tmpdir" from the File class, instead
of setting them explicitly.
* java/io/File.java: Do not canonicalize paths for security manager
checks. Call init_native() from static initializer. Do not pass path
argument to native methods. New native method declarations. Some
security manager checks moved to checkWrite().
(equals): Check file system case sensitivity and act appropriatly.
(hashCode): Likewise.
(isHidden): New method implemented.
(performList): Changed prototype. Now takes a class argument specifying
the class of the returned array: Strings or File objects. Also added
FileFilter argument.
(listFiles): New variants with "File" return type implemented.
(createTempFile): Use createNewFile(). Use maxPathLen.
(setReadOnly): New method implemented.
(listRoots): Likewise.
(compareTo): Likewise.
(setLastModified): Likewise.
(checkWrite): New method.
(setPath): Removed.
* java/io/natFile.cc: Various functions no longer take canonical path
argument.
(stat): Handle ISHIDDEN query.
(isAbsolute): Remove WIN32 cruft.
(performList): New arguments. Handle returning either File[] or
String[] arrays. Check with FileFilter or FilenameFilter arguments as
appropriate. Use an ArrayList, not a Vector, for the temporary list.
(performSetReadOnly): New method implemented.
(performListRoots): Likewise.
(performSetLastModified): Likewise.
(performCreate): Likewise.
(init_native): New initialization function.
* java/io/natFileWin32.cc: Various functions no longer take canonical
path argument.
(stat): Add FIXME about ISHIDDEN query.
(performList): New arguments. Handle returning either File[] or String[]
arrays. Check with FileFilter or FilenameFilter arguments as
appropriate. Use an ArrayList, not a Vector, for the temporary list.
(performSetReadOnly): New. Stubbed.
(performListRoots): Likewise.
(performSetLastModified): Likewise.
(performCreate): Likewise.
(init_native) New initialization function.
* configure.in: Check for utime() and chmod().
* configure: Rebuilt.
* include/config.h.in: Rebuilt.

Resolves PR libgcj/1759.

From-SVN: r40985
libjava/ChangeLog
libjava/configure
libjava/configure.in
libjava/include/config.h.in
libjava/java/io/File.java
libjava/java/io/natFile.cc
libjava/java/io/natFileWin32.cc
libjava/java/lang/natSystem.cc