aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Koch <konqueror@gmx.de>2004-04-23 07:21:46 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2004-04-23 07:21:46 +0000
commite9d34968823670f95b9b2caba30f007ac9f383c5 (patch)
tree58c86148a9fdb9651559b0e2870b409d9678979c
parent87939d70f8e59736e8d8d19b04694363452a817e (diff)
downloadgcc-e9d34968823670f95b9b2caba30f007ac9f383c5.zip
gcc-e9d34968823670f95b9b2caba30f007ac9f383c5.tar.gz
gcc-e9d34968823670f95b9b2caba30f007ac9f383c5.tar.bz2
2004-04-23 Michael Koch <konqueror@gmx.de>
* java/net/URL.java (hashcode): Don't initialize with default value explicitely. (getContent): Removed redundant "final" keyword. (openStream): Likewise. (getURLStreamHandler): Fixed coding style. * java/net/URLConnection.java (defaultAllowUserInteraction): Don't initialize with default value explicitely. (connected): Likewise. (doOutput): Likewise. (ifModifiedSince): Likewise. (dateformats_initialized): Likewise. (setURLStreamHander): Use StreamTokenizer where it belongs to. From-SVN: r81080
-rw-r--r--libjava/ChangeLog16
-rw-r--r--libjava/java/net/URL.java43
-rw-r--r--libjava/java/net/URLConnection.java8
3 files changed, 48 insertions, 19 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 6222b57..59f1fce 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,21 @@
2004-04-23 Michael Koch <konqueror@gmx.de>
+ * java/net/URL.java
+ (hashcode): Don't initialize with default value explicitely.
+ (getContent): Removed redundant "final" keyword.
+ (openStream): Likewise.
+ (getURLStreamHandler): Fixed coding style.
+ * java/net/URLConnection.java
+ (defaultAllowUserInteraction): Don't initialize with default value
+ explicitely.
+ (connected): Likewise.
+ (doOutput): Likewise.
+ (ifModifiedSince): Likewise.
+ (dateformats_initialized): Likewise.
+ (setURLStreamHander): Use StreamTokenizer where it belongs to.
+
+2004-04-23 Michael Koch <konqueror@gmx.de>
+
* gnu/java/nio/channels/FileChannelImpl.java
(SET, CUR): Unused, removed.
(read): Implement here directly.
diff --git a/libjava/java/net/URL.java b/libjava/java/net/URL.java
index d9bf0ab..729d96f 100644
--- a/libjava/java/net/URL.java
+++ b/libjava/java/net/URL.java
@@ -141,6 +141,11 @@ public final class URL implements Serializable
private String host;
/**
+ * The user information necessary to establish the connection.
+ */
+ private String userInfo;
+
+ /**
* The port number of this protocol or -1 if the port number used is
* the default for this protocol.
*/
@@ -159,7 +164,7 @@ public final class URL implements Serializable
/**
* This is the hashCode for this URL
*/
- private int hashCode = 0;
+ private int hashCode;
/**
* The protocol handler in use for this URL
@@ -276,7 +281,9 @@ public final class URL implements Serializable
this.host = host;
this.port = port;
- this.authority = null;
+ this.authority = (host != null) ? host : "";
+ if (port >= 0)
+ this.authority += ":" + port;
int hashAt = file.indexOf('#');
if (hashAt < 0)
@@ -480,7 +487,7 @@ public final class URL implements Serializable
*
* @since 1.3
*/
- public final Object getContent() throws IOException
+ public Object getContent() throws IOException
{
return openConnection().getContent();
}
@@ -494,7 +501,7 @@ public final class URL implements Serializable
*
* @exception IOException If an error occurs
*/
- public final Object getContent (Class[] classes) throws IOException
+ public Object getContent(Class[] classes) throws IOException
{
// FIXME: implement this
return getContent();
@@ -653,7 +660,7 @@ public final class URL implements Serializable
*
* @exception IOException If an error occurs
*/
- public final InputStream openStream() throws IOException
+ public InputStream openStream() throws IOException
{
return openConnection().getInputStream();
}
@@ -694,11 +701,17 @@ public final class URL implements Serializable
// be aware of this.
this.ph = getURLStreamHandler(protocol);
this.protocol = protocol.toLowerCase();
- this.authority = null;
+ this.authority = "";
this.port = port;
this.host = host;
this.file = file;
this.ref = ref;
+
+ if (host != null)
+ this.authority += host;
+ if (port >= 0)
+ this.authority += ":" + port;
+
hashCode = hashCode(); // Used for serialization.
}
@@ -727,15 +740,15 @@ public final class URL implements Serializable
// be aware of this.
this.ph = getURLStreamHandler(protocol);
this.protocol = protocol.toLowerCase();
- if (userInfo == null)
- this.host = host;
- else
- this.host = userInfo + "@" + host;
+ this.host = host;
+ this.userInfo = userInfo;
this.port = port;
+ this.file = path;
+ this.authority = authority;
if (query == null)
- this.file = path;
+ this.file = file;
else
- this.file = path + "?" + query;
+ this.file = file + "?" + query;
this.ref = ref;
hashCode = hashCode(); // Used for serialization.
}
@@ -811,13 +824,13 @@ public final class URL implements Serializable
// If a non-default factory has been set, use it to find the protocol.
if (factory != null)
{
- ph = factory.createURLStreamHandler (protocol);
+ ph = factory.createURLStreamHandler(protocol);
}
- else if (protocol.equals ("core"))
+ else if (protocol.equals("core"))
{
ph = new gnu.java.net.protocol.core.Handler();
}
- else if (protocol.equals ("file"))
+ else if (protocol.equals("file"))
{
// This is an interesting case. It's tempting to think that we
// could call Class.forName ("gnu.java.net.protocol.file.Handler") to
diff --git a/libjava/java/net/URLConnection.java b/libjava/java/net/URLConnection.java
index 39fbd32..867a534 100644
--- a/libjava/java/net/URLConnection.java
+++ b/libjava/java/net/URLConnection.java
@@ -432,10 +432,10 @@ public abstract class URLConnection
String type = getContentType();
ContentHandler ch = setContentHandler(type);
- if (ch != null)
- return ch.getContent(this);
+ if (ch == null)
+ return getInputStream();
- return getInputStream();
+ return ch.getContent(this);
}
/**
@@ -993,7 +993,6 @@ public abstract class URLConnection
// Replace the '/' character in the content type with '.' and
// all other non-alphabetic, non-numeric characters with '_'.
- StringTokenizer pkgPrefix = new StringTokenizer(propVal, "|");
char[] cArray = contentType.toCharArray();
for (int i = 0; i < cArray.length; i++)
{
@@ -1007,6 +1006,7 @@ public abstract class URLConnection
String contentClass = new String(cArray);
// See if a class of this content type exists in any of the packages.
+ StringTokenizer pkgPrefix = new StringTokenizer(propVal, "|");
do
{
String facName = pkgPrefix.nextToken() + "." + contentClass;