RFR: 8353278: Consolidate local file URL checks in jar: and file: URL schemes
Daniel Fuchs
dfuchs at openjdk.org
Thu Apr 3 10:14:58 UTC 2025
On Mon, 31 Mar 2025 14:46:32 GMT, Eirik Bjørsnøs <eirbjo at openjdk.org> wrote:
> Please help review this cleanup PR which consolidates 'local file' URL checks across the 'file:' and 'jar:' URL scheme implementations and defines this check in terms of RFC 8089, Section 2.
>
> This PR:
>
> * Moves `URLJarFile.isFileURL` to `sun.net.www.ParseUtil` where it is documented according to RFC 8089 and given the more suitable name `isLocalFileURL`
> * Updates `isLocalFileURL` to simplify an `if (x) return true;` statement to `return x;`
> * Updates `URLJarFile.getJarFile` and `JarFileFactory.getOrCreate` to use `isLocalFileURL`
> * Updates `JarFileFactory.urlFor` to use `isLocalFileURL` (while maintaining and documenting the historical and subtly different non-treatment of '~' as an alias for 'localhost')
> * Updates `sun.net.www.protocol.file.Handler.openConnection` to use `isLocalFileURL` in windows/unix implementations
>
> This is a pure cleanup / refactoring PR, no tests are updated here. Existing testing in this area seems sparse, so I have tried to limit the number of code tweaks to a minimium to make reviews easier.
>
> Testing: GHA runs green, as well as tier2 on MacOS.
My tests came back green - but it wouldn't hurt to have another reviewer/committer eyeball these changes before integrating. As far as I could tell - the code with the new changes is strictly equivalent to the old.
-------------
Marked as reviewed by dfuchs (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/24332#pullrequestreview-2739261233
More information about the net-dev
mailing list