re PR libgcj/4383 (file: protocol not supported in URLConnection?)
authorBryce McKinlay <bryce@waitaki.otago.ac.nz>
Sun, 30 Sep 2001 07:52:16 +0000 (07:52 +0000)
committerBryce McKinlay <bryce@gcc.gnu.org>
Sun, 30 Sep 2001 07:52:16 +0000 (08:52 +0100)
PR libgcj/4383

* gnu/gcj/protocol/file/Connection.java (connect): Throw
FileNotFoundException if appropriate.
* gnu/gcj/protocol/file/Handler.java (openConnection): Throw an
IOException if we got a file: url with a hostname. Comment out protocol
switch to ftp for now.
* java/net/URL.java (URL): Include protocol name in exception
message
when handler can't be found.

From-SVN: r45898

libjava/ChangeLog
libjava/gnu/gcj/protocol/file/Connection.java
libjava/gnu/gcj/protocol/file/Handler.java
libjava/java/net/URL.java

index a76e941..11791d2 100644 (file)
@@ -2,6 +2,14 @@
 
        * java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of
        an uninitialized target class.
+       
+       * gnu/gcj/protocol/file/Connection.java (connect): Throw 
+       FileNotFoundException if appropriate.
+       * gnu/gcj/protocol/file/Handler.java (openConnection): Throw an 
+       IOException if we got a file: url with a hostname. Comment out protocol
+       switch to ftp for now.
+       * java/net/URL.java (URL): Include protocol name in exception message
+       when handler can't be found.
 
 2001-09-28  Per Bothner  <per@bothner.com>
 
index b7804cb..e9ef08f 100644 (file)
@@ -48,7 +48,11 @@ class Connection extends URLConnection
 
     // If not connected, then file needs to be openned.
     fileIn = new File(url.getFile());
-    connected = true;
+    
+    if (fileIn.exists())
+      connected = true;
+    else
+      throw new FileNotFoundException("No such file or directory");
   }
 
   public InputStream getInputStream() throws IOException
index b4d8fbf..f48ef8e 100644 (file)
@@ -35,6 +35,8 @@ public class Handler extends URLStreamHandler
     String host = url.getHost();
     if ((host != null) && (! host.equals("")))
       {
+        throw new IOException("ftp protocol handler not yet implemented.");
+        /*
        // Reset the protocol (and implicitly the handler) for this URL.
        // Then have the URL attempt the connection again, as it will
        // get the changed handler the next time around.
@@ -43,6 +45,7 @@ public class Handler extends URLStreamHandler
        // Until the ftp protocol handler is written, this will cause
        // a NullPointerException.
        return url.openConnection();
+       */
       }
 
     return new Connection(url);
index 25291fa..636e6ef 100644 (file)
@@ -76,7 +76,7 @@ public final class URL implements Serializable
       this.handler = setURLStreamHandler(protocol);
 
     if (this.handler == null)
-      throw new MalformedURLException("Handler for protocol not found");
+      throw new MalformedURLException("Protocol handler not found: " + protocol);
 
     this.host = host;
 
@@ -175,7 +175,7 @@ public final class URL implements Serializable
       this.handler = setURLStreamHandler(protocol);
 
     if (this.handler == null)
-      throw new MalformedURLException("Handler for protocol not found");
+      throw new MalformedURLException("Protocol handler not found: " + protocol);
 
     // JDK 1.2 doc for parseURL specifically states that any '#' ref
     // is to be excluded by passing the 'limit' as the indexOf the '#'