# HG changeset patch # User godin # Date 1566338915 -7200 # Node ID 40006c0ada9137fb4cae4c6ed48b27dbcb1806f8 # Parent c83245fe66b31610e5afd3d3d077fe86c4df30fa 8139820: URLClassPath.FileLoader constructor redundantly checks protocol Reviewed-by: chegar, redestad diff -r c83245fe66b3 -r 40006c0ada91 src/java.base/share/classes/jdk/internal/loader/URLClassPath.java --- a/src/java.base/share/classes/jdk/internal/loader/URLClassPath.java Tue Aug 20 11:36:47 2019 -0700 +++ b/src/java.base/share/classes/jdk/internal/loader/URLClassPath.java Wed Aug 21 00:08:35 2019 +0200 @@ -699,7 +699,7 @@ /* * Nested class used to represent a Loader of resources from a JAR URL. */ - static class JarLoader extends Loader { + private static class JarLoader extends Loader { private JarFile jar; private final URL csu; private JarIndex index; @@ -714,9 +714,9 @@ * Creates a new JarLoader for the specified URL referring to * a JAR file. */ - JarLoader(URL url, URLStreamHandler jarHandler, - HashMap loaderMap, - AccessControlContext acc) + private JarLoader(URL url, URLStreamHandler jarHandler, + HashMap loaderMap, + AccessControlContext acc) throws IOException { super(new URL("jar", "", -1, url + "!/", jarHandler)); @@ -1193,11 +1193,11 @@ /* Canonicalized File */ private File dir; - FileLoader(URL url) throws IOException { + /* + * Creates a new FileLoader for the specified URL with a file protocol. + */ + private FileLoader(URL url) throws IOException { super(url); - if (!"file".equals(url.getProtocol())) { - throw new IllegalArgumentException("url"); - } String path = url.getFile().replace('/', File.separatorChar); path = ParseUtil.decode(path); dir = (new File(path)).getCanonicalFile();