org.apache.catalina.util
Class URL
java.lang.Object
org.apache.catalina.util.URL
- Serializable
public final class URL
extends java.lang.Object
implements Serializable
URL is designed to provide public APIs for parsing
and synthesizing Uniform Resource Locators as similar as possible to the
APIs of
java.net.URL
, but without the ability to open a
stream or connection. One of the consequences of this is that you can
construct URLs for protocols for which a URLStreamHandler is not
available (such as an "https" URL when JSSE is not installed).
WARNING - This class assumes that the string
representation of a URL conforms to the
spec
argument
as described in RFC 2396 "Uniform Resource Identifiers: Generic Syntax":
<scheme>//<authority><path>?<query>#<fragment>
FIXME - This class really ought to end up in a Commons
package someplace.
Version:
- Craig R. McClanahan
URL(String spec) - Create a URL object from the specified String representation.
|
URL(String protocol, String host, String file) - Create a URL object from the specified components.
|
URL(String protocol, String host, int port, String file) - Create a URL object from the specified components.
|
URL(URL context, String spec) - Create a URL object by parsing a string representation relative
to a specified context.
|
boolean | equals(Object obj) - Compare two URLs for equality.
|
String | getAuthority() - Return the authority part of the URL.
|
String | getFile() - Return the filename part of the URL.
|
String | getHost() - Return the host name part of the URL.
|
String | getPath() - Return the path part of the URL.
|
int | getPort() - Return the port number part of the URL.
|
String | getProtocol() - Return the protocol name part of the URL.
|
String | getQuery() - Return the query part of the URL.
|
String | getRef() - Return the reference part of the URL.
|
String | getUserInfo() - Return the user info part of the URL.
|
void | normalize() - Normalize the
path (and therefore file )
portions of this URL.
|
boolean | sameFile(URL other) - Compare two URLs, excluding the "ref" fields.
|
String | toExternalForm() - Return a string representation of this URL.
|
String | toString() - Return a string representation of this object.
|
URL
public URL(String spec)
throws MalformedURLException
Create a URL object from the specified String representation.
spec
- String representation of the URL
URL
public URL(String protocol,
String host,
String file)
throws MalformedURLException
Create a URL object from the specified components. The default port
number for the specified protocol will be used.
protocol
- Name of the protocol to usehost
- Name of the host addressed by this protocolfile
- Filename on the specified host
URL
public URL(String protocol,
String host,
int port,
String file)
throws MalformedURLException
Create a URL object from the specified components. Specifying a port
number of -1 indicates that the URL should use the default port for
that protocol. Based on logic from JDK 1.3.1's
java.net.URL
.
protocol
- Name of the protocol to usehost
- Name of the host addressed by this protocolport
- Port number, or -1 for the default port for this protocolfile
- Filename on the specified host
URL
public URL(URL context,
String spec)
throws MalformedURLException
Create a URL object by parsing a string representation relative
to a specified context. Based on logic from JDK 1.3.1's
java.net.URL
.
context
- URL against which the relative representation
is resolvedspec
- String representation of the URL (usually relative)
equals
public boolean equals(Object obj)
Compare two URLs for equality. The result is true
if and
only if the argument is not null, and is a URL
object
that represents the same URL
as this object. Two
URLs
are equal if they have the same protocol and
reference the same host, the same port number on the host,
and the same file and anchor on the host.
obj
- The URL to compare against
getAuthority
public String getAuthority()
Return the authority part of the URL.
getFile
public String getFile()
Return the filename part of the URL. NOTE - For
compatibility with java.net.URL
, this value includes
the query string if there was one. For just the path portion,
call getPath()
instead.
getHost
public String getHost()
Return the host name part of the URL.
getPath
public String getPath()
Return the path part of the URL.
getPort
public int getPort()
Return the port number part of the URL.
getProtocol
public String getProtocol()
Return the protocol name part of the URL.
getQuery
public String getQuery()
Return the query part of the URL.
getRef
public String getRef()
Return the reference part of the URL.
getUserInfo
public String getUserInfo()
Return the user info part of the URL.
normalize
public void normalize()
throws MalformedURLException
Normalize the
path
(and therefore
file
)
portions of this URL.
NOTE - This method is not part of the public API
of
java.net.URL
, but is provided as a value added
service of this implementation.
sameFile
public boolean sameFile(URL other)
Compare two URLs, excluding the "ref" fields. Returns true
if this URL
and the other
argument both refer
to the same resource. The two URLs
might not both contain
the same anchor.
toExternalForm
public String toExternalForm()
Return a string representation of this URL. This follow the rules in
RFC 2396, Section 5.2, Step 7.
toString
public String toString()
Return a string representation of this object.
Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.