8215008: Clear confusion between URL/URI paths and file system paths
Reviewed-by: alanb, chegar, martin
This commit is contained in:
parent
4de59847eb
commit
019a097385
@ -25,6 +25,7 @@
|
||||
|
||||
package java.net;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InvalidObjectException;
|
||||
import java.io.ObjectInputStream;
|
||||
@ -36,6 +37,7 @@ import java.nio.charset.CharsetDecoder;
|
||||
import java.nio.charset.CoderResult;
|
||||
import java.nio.charset.CodingErrorAction;
|
||||
import java.nio.charset.CharacterCodingException;
|
||||
import java.nio.file.Path;
|
||||
import java.text.Normalizer;
|
||||
import jdk.internal.access.JavaNetUriAccess;
|
||||
import jdk.internal.access.SharedSecrets;
|
||||
@ -458,6 +460,27 @@ import java.lang.NullPointerException; // for javadoc
|
||||
* resolution as well as the network I/O operations of looking up the host and
|
||||
* opening a connection to the specified resource.
|
||||
*
|
||||
* @apiNote
|
||||
*
|
||||
* Applications working with file paths and file URIs should take great
|
||||
* care to use the appropriate methods to convert between the two.
|
||||
* The {@link Path#of(URI)} factory method and the {@link File#File(URI)}
|
||||
* constructor can be used to create {@link Path} or {@link File}
|
||||
* objects from a file URI. {@link Path#toUri()} and {@link File#toURI()}
|
||||
* can be used to create a {@link URI} from a file path.
|
||||
* Applications should never try to {@linkplain
|
||||
* #URI(String, String, String, int, String, String, String)
|
||||
* construct}, {@linkplain #URI(String) parse}, or
|
||||
* {@linkplain #resolve(String) resolve} a {@code URI}
|
||||
* from the direct string representation of a {@code File} or {@code Path}
|
||||
* instance.
|
||||
* <p>
|
||||
* Some components of a URL or URI, such as <i>userinfo</i>, may
|
||||
* be abused to construct misleading URLs or URIs. Applications
|
||||
* that deal with URLs or URIs should take into account
|
||||
* the recommendations advised in <a
|
||||
* href="https://tools.ietf.org/html/rfc3986#section-7">RFC3986,
|
||||
* Section 7, Security Considerations</a>.
|
||||
*
|
||||
* @author Mark Reinhold
|
||||
* @since 1.4
|
||||
|
@ -25,9 +25,11 @@
|
||||
|
||||
package java.net;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.spi.URLStreamHandlerProvider;
|
||||
import java.nio.file.Path;
|
||||
import java.security.AccessController;
|
||||
import java.security.PrivilegedAction;
|
||||
import java.util.Hashtable;
|
||||
@ -145,6 +147,27 @@ import sun.security.action.GetPropertyAction;
|
||||
* used, but only for HTML form encoding, which is not the same
|
||||
* as the encoding scheme defined in RFC2396.
|
||||
*
|
||||
* @apiNote
|
||||
*
|
||||
* Applications working with file paths and file URIs should take great
|
||||
* care to use the appropriate methods to convert between the two.
|
||||
* The {@link Path#of(URI)} factory method and the {@link File#File(URI)}
|
||||
* constructor can be used to create {@link Path} or {@link File}
|
||||
* objects from a file URI. {@link Path#toUri()} and {@link File#toURI()}
|
||||
* can be used to create a {@link URI} from a file path, which can be
|
||||
* converted to URL using {@link URI#toURL()}.
|
||||
* Applications should never try to {@linkplain #URL(String, String, String)
|
||||
* construct} or {@linkplain #URL(String) parse} a {@code URL}
|
||||
* from the direct string representation of a {@code File} or {@code Path}
|
||||
* instance.
|
||||
* <p>
|
||||
* Some components of a URL or URI, such as <i>userinfo</i>, may
|
||||
* be abused to construct misleading URLs or URIs. Applications
|
||||
* that deal with URLs or URIs should take into account
|
||||
* the recommendations advised in <a
|
||||
* href="https://tools.ietf.org/html/rfc3986#section-7">RFC3986,
|
||||
* Section 7, Security Considerations</a>.
|
||||
*
|
||||
* @author James Gosling
|
||||
* @since 1.0
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user