re PR libgcj/4383 (file: protocol not supported in URLConnection?)
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
This commit is contained in:
parent
fa82903832
commit
218e1e912d
4 changed files with 18 additions and 3 deletions
|
@ -2,6 +2,14 @@
|
||||||
|
|
||||||
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of
|
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of
|
||||||
an uninitialized target class.
|
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>
|
2001-09-28 Per Bothner <per@bothner.com>
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,11 @@ class Connection extends URLConnection
|
||||||
|
|
||||||
// If not connected, then file needs to be openned.
|
// If not connected, then file needs to be openned.
|
||||||
fileIn = new File(url.getFile());
|
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
|
public InputStream getInputStream() throws IOException
|
||||||
|
|
|
@ -35,6 +35,8 @@ public class Handler extends URLStreamHandler
|
||||||
String host = url.getHost();
|
String host = url.getHost();
|
||||||
if ((host != null) && (! host.equals("")))
|
if ((host != null) && (! host.equals("")))
|
||||||
{
|
{
|
||||||
|
throw new IOException("ftp protocol handler not yet implemented.");
|
||||||
|
/*
|
||||||
// Reset the protocol (and implicitly the handler) for this URL.
|
// Reset the protocol (and implicitly the handler) for this URL.
|
||||||
// Then have the URL attempt the connection again, as it will
|
// Then have the URL attempt the connection again, as it will
|
||||||
// get the changed handler the next time around.
|
// 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
|
// Until the ftp protocol handler is written, this will cause
|
||||||
// a NullPointerException.
|
// a NullPointerException.
|
||||||
return url.openConnection();
|
return url.openConnection();
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
return new Connection(url);
|
return new Connection(url);
|
||||||
|
|
|
@ -76,7 +76,7 @@ public final class URL implements Serializable
|
||||||
this.handler = setURLStreamHandler(protocol);
|
this.handler = setURLStreamHandler(protocol);
|
||||||
|
|
||||||
if (this.handler == null)
|
if (this.handler == null)
|
||||||
throw new MalformedURLException("Handler for protocol not found");
|
throw new MalformedURLException("Protocol handler not found: " + protocol);
|
||||||
|
|
||||||
this.host = host;
|
this.host = host;
|
||||||
|
|
||||||
|
@ -175,7 +175,7 @@ public final class URL implements Serializable
|
||||||
this.handler = setURLStreamHandler(protocol);
|
this.handler = setURLStreamHandler(protocol);
|
||||||
|
|
||||||
if (this.handler == null)
|
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
|
// JDK 1.2 doc for parseURL specifically states that any '#' ref
|
||||||
// is to be excluded by passing the 'limit' as the indexOf the '#'
|
// is to be excluded by passing the 'limit' as the indexOf the '#'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue