summaryrefslogtreecommitdiff
path: root/gnu/java/net/protocol/http/HTTPURLConnection.java
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/java/net/protocol/http/HTTPURLConnection.java')
-rw-r--r--gnu/java/net/protocol/http/HTTPURLConnection.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnu/java/net/protocol/http/HTTPURLConnection.java b/gnu/java/net/protocol/http/HTTPURLConnection.java
index 2938dfc95..78505b788 100644
--- a/gnu/java/net/protocol/http/HTTPURLConnection.java
+++ b/gnu/java/net/protocol/http/HTTPURLConnection.java
@@ -40,6 +40,7 @@ package gnu.java.net.protocol.http;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
+import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -94,6 +95,7 @@ public class HTTPURLConnection
private Response response;
private ByteArrayInputStream responseSink;
+ private ByteArrayInputStream errorSink;
private HandshakeCompletedEvent handshakeEvent;
@@ -286,6 +288,11 @@ public class HTTPURLConnection
else
{
responseSink = new ByteArrayInputStream(reader.toByteArray ());
+ if (response.getCode() == 404)
+ {
+ errorSink = responseSink;
+ throw new FileNotFoundException(url.toString());
+ }
}
}
while (retry);
@@ -455,6 +462,11 @@ public class HTTPURLConnection
return responseSink;
}
+ public InputStream getErrorStream()
+ {
+ return errorSink;
+ }
+
public Map getHeaderFields()
{
if (!connected)