This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Patch: java.net - url stuff cleanup


Hi list,


I just commited the attached patch to clean up URL stuff in java.net a 
little bit.


Michael


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.

Index: java/net/URL.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/net/URL.java,v
retrieving revision 1.35
diff -u -r1.35 URL.java
--- java/net/URL.java	20 Apr 2004 13:05:10 -0000	1.35
+++ java/net/URL.java	23 Apr 2004 07:21:01 -0000
@@ -141,6 +141,11 @@
   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 @@
   /**
    * 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 @@
 
     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 @@
    *
    * @since 1.3
    */
-  public final Object getContent() throws IOException
+  public Object getContent() throws IOException
   {
     return openConnection().getContent();
   }
@@ -494,7 +501,7 @@
    *
    * @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 @@
    *
    * @exception IOException If an error occurs
    */
-  public final InputStream openStream() throws IOException
+  public InputStream openStream() throws IOException
   {
     return openConnection().getInputStream();
   }
@@ -694,11 +701,17 @@
     // 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 @@
     // 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 @@
     // 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
Index: java/net/URLConnection.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/net/URLConnection.java,v
retrieving revision 1.30
diff -u -r1.30 URLConnection.java
--- java/net/URLConnection.java	22 Apr 2004 07:02:25 -0000	1.30
+++ java/net/URLConnection.java	23 Apr 2004 07:21:01 -0000
@@ -432,10 +432,10 @@
     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 @@
 
 	// 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 @@
 	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;

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]