+2004-07-03 Mark Wielaard <mark@klomp.org>
+ Anthony Green <green@redhat.com>
+
+ * java/net/URL.java (getFile): Clarify return value doc.
+ (getPath): Return null if file is empty - not empty String.
+ (set): Convert protocol to lower case before doing anything.
+ Only change the protocol handler if it's different.
+
+2004-07-03 Anthony Green <green@redhat.com>
+
+ * java/net/URL.java (URL): Convert protocol to lower case before
+ doing anything, so we getURLStreamHandler() with the proper value.
+
2004-07-02 Bryce McKinlay <mckinlay@redhat.com>
* java/util/Locale.java (hashcode): Made transient.
{
if (protocol == null)
throw new MalformedURLException("null protocol");
- this.protocol = protocol.toLowerCase();
+ protocol = protocol.toLowerCase();
+ this.protocol = protocol;
if (ph != null)
{
* Defined as <code>path[?query]</code>.
* Returns the empty string if there is no file portion.
*
- * @return The filename specified in this URL.
+ * @return The filename specified in this URL, or an empty string if empty.
*/
public String getFile()
{
* Returns the path of the URL. This is the part of the file before any '?'
* character.
*
- * @return The path specified in this URL.
+ * @return The path specified in this URL, or null if empty.
*
* @since 1.3
*/
public String getPath()
{
- int quest = (file == null) ? -1 : file.indexOf('?');
+ if (file == null)
+ return null;
+ int quest = file.indexOf('?');
return quest < 0 ? getFile() : file.substring(0, quest);
}
// invalid protocol. It will cause the handler to be set to null
// thus overriding a valid handler. Callers of this method should
// be aware of this.
- this.ph = getURLStreamHandler(protocol);
- this.protocol = protocol.toLowerCase();
+ protocol = protocol.toLowerCase ();
+ if (! this.protocol.equals (protocol))
+ {
+ this.ph = getURLStreamHandler(protocol);
+ this.protocol = protocol;
+ }
this.authority = "";
this.port = port;
this.host = host;
// invalid protocol. It will cause the handler to be set to null
// thus overriding a valid handler. Callers of this method should
// be aware of this.
- this.ph = getURLStreamHandler(protocol);
- this.protocol = protocol.toLowerCase();
+ protocol = protocol.toLowerCase ();
+ if (! this.protocol.equals (protocol))
+ {
+ this.ph = getURLStreamHandler(protocol);
+ this.protocol = protocol;
+ }
this.host = host;
this.userInfo = userInfo;
this.port = port;