public abstract class

URLStreamHandler

extends Object
java.lang.Object
   ↳ java.net.URLStreamHandler

Class Overview

The abstract class URLStreamHandler is the base for all classes which can handle the communication with a URL object over a particular protocol type.

Summary

Public Constructors
URLStreamHandler()
Protected Methods
boolean equals(URL url1, URL url2)
Compares two URL objects whether they represent the same URL.
int getDefaultPort()
Returns the default port of the protocol used by the handled URL.
InetAddress getHostAddress(URL url)
Returns the host address of the given URL.
int hashCode(URL url)
Returns the hashcode value for the given URL object.
boolean hostsEqual(URL url1, URL url2)
Compares two URL objects whether they refer to the same host.
URLConnection openConnection(URL u, Proxy proxy)
Establishes a new connection to the resource specified by the URL u using the given proxy.
abstract URLConnection openConnection(URL u)
Establishes a new connection to the resource specified by the URL u.
void parseURL(URL u, String str, int start, int end)
Parses the clear text URL in str into a URL object.
boolean sameFile(URL url1, URL url2)
Compares two URL objects whether they refer to the same file.
void setURL(URL u, String protocol, String host, int port, String file, String ref)
This method is deprecated. use setURL(URL, String String, int, String, String, String, String, String) instead.
void setURL(URL u, String protocol, String host, int port, String authority, String userInfo, String file, String query, String ref)
Sets the fields of the URL u to the values of the supplied arguments.
String toExternalForm(URL url)
Returns the clear text representation of a given URL using HTTP format.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public URLStreamHandler ()

Protected Methods

protected boolean equals (URL url1, URL url2)

Compares two URL objects whether they represent the same URL. Two URLs are equal if they have the same file, host, port, protocol, query, and reference components.

Parameters
url1 the first URL to compare.
url2 the second URL to compare.
Returns
  • true if the URLs are the same, false otherwise.
See Also

protected int getDefaultPort ()

Returns the default port of the protocol used by the handled URL. The current implementation returns always -1.

Returns
  • the appropriate default port number of the protocol.

protected InetAddress getHostAddress (URL url)

Returns the host address of the given URL.

Parameters
url the URL object where to read the host address from.
Returns
  • the host address of the specified URL.

protected int hashCode (URL url)

Returns the hashcode value for the given URL object.

Parameters
url the URL to determine the hashcode.
Returns
  • the hashcode of the given URL.

protected boolean hostsEqual (URL url1, URL url2)

Compares two URL objects whether they refer to the same host.

Parameters
url1 the first URL to be compared.
url2 the second URL to be compared.
Returns
  • true if both URLs refer to the same host, false otherwise.

protected URLConnection openConnection (URL u, Proxy proxy)

Establishes a new connection to the resource specified by the URL u using the given proxy. Since different protocols also have unique ways of connecting, it must be overwritten by the subclass.

Parameters
u the URL to the resource where a connection has to be opened.
proxy the proxy that is used to make the connection.
Returns
  • the opened URLConnection to the specified resource.
Throws
IOException if an I/O error occurs during opening the connection.
IllegalArgumentException if any argument is null or the type of proxy is wrong.
UnsupportedOperationException if the protocol handler doesn't support this method.

protected abstract URLConnection openConnection (URL u)

Establishes a new connection to the resource specified by the URL u. Since different protocols also have unique ways of connecting, it must be overwritten by the subclass.

Parameters
u the URL to the resource where a connection has to be opened.
Returns
  • the opened URLConnection to the specified resource.
Throws
IOException if an I/O error occurs during opening the connection.

protected void parseURL (URL u, String str, int start, int end)

Parses the clear text URL in str into a URL object. URL strings generally have the following format:

http://www.company.com/java/file1.java#reference

The string is parsed in HTTP format. If the protocol has a different URL format this method must be overridden.

Parameters
u the URL to fill in the parsed clear text URL parts.
str the URL string that is to be parsed.
start the string position from where to begin parsing.
end the string position to stop parsing.

protected boolean sameFile (URL url1, URL url2)

Compares two URL objects whether they refer to the same file. In the comparison included are the URL components protocol, host, port and file.

Parameters
url1 the first URL to be compared.
url2 the second URL to be compared.
Returns
  • true if both URLs refer to the same file, false otherwise.

protected void setURL (URL u, String protocol, String host, int port, String file, String ref)

This method is deprecated.use setURL(URL, String String, int, String, String, String, String, String) instead.

Sets the fields of the URL u to the values of the supplied arguments.

Parameters
u the non-null URL object to be set.
protocol the protocol.
host the host name.
port the port number.
file the file component.
ref the reference.

protected void setURL (URL u, String protocol, String host, int port, String authority, String userInfo, String file, String query, String ref)

Sets the fields of the URL u to the values of the supplied arguments.

Parameters
u the non-null URL object to be set.
protocol the protocol.
host the host name.
port the port number.
authority the authority.
userInfo the user info.
file the file component.
query the query.
ref the reference.

protected String toExternalForm (URL url)

Returns the clear text representation of a given URL using HTTP format.

Parameters
url the URL object to be converted.
Returns
  • the clear text representation of the specified URL.