RFR: JDK-8274172: Convert JavadocTester to use NIO
Jonathan Gibbons
jjg at openjdk.java.net
Thu Sep 23 16:41:49 UTC 2021
On Thu, 23 Sep 2021 14:29:38 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> test/langtools/jdk/javadoc/lib/javadoc/tester/JavadocTester.java line 802:
>>
>>> 800: public FileVisitResult preVisitDirectory(Path fromSubdir, BasicFileAttributes attrs) throws IOException {
>>> 801: Path toSubdir = toDir.resolve(fromDir.relativize(fromSubdir));
>>> 802: if (Files.exists(toSubdir)) {
>>
>> Shouldn't this check be negated? Otherwise, sub-folders are not copied. On the second thought, why do we need this check at all?
>
> Oops.
> Whether it is needed depends on whether you think the target directory exists or not. In the one existing use case, the directory should not exist and so the check is not necessary. Given that tests run in an empty scratch dir, we could reasonably assume that is the case.
This method (`copyDir`) does not really belong in `JavadocTester`. It's only used in one test, so could be moved there, but a better home is in `ToolBox` which already has similar methods. I'll move it there.
Separately, I see `ToolBox` could use some TLC/updates ... e.g. use `Path.of` instead of `Paths.get` but I'll defer that to a separate issue.
-------------
PR: https://git.openjdk.java.net/jdk/pull/5644
More information about the javadoc-dev
mailing list