From 52e96e92423c48a68424d9766caf2778fa2b3d82 Mon Sep 17 00:00:00 2001 From: mkoch Date: Thu, 4 Dec 2003 17:52:01 +0000 Subject: [PATCH] 2003-12-04 Michael Koch * gnu/java/net/protocol/http/Connection.java (sendRequest): Merged writing http headers with classpath. (getInputStream): Merged documentation from classpath. (getHeaderField): Likewise. (getHeaderFieldKey): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74283 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/ChangeLog | 8 +++ libjava/gnu/java/net/protocol/http/Connection.java | 62 +++++++++++++++++++--- 2 files changed, 63 insertions(+), 7 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index a34242245ea..99b92503635 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,13 @@ 2003-12-04 Michael Koch + * gnu/java/net/protocol/http/Connection.java + (sendRequest): Merged writing http headers with classpath. + (getInputStream): Merged documentation from classpath. + (getHeaderField): Likewise. + (getHeaderFieldKey): Likewise. + +2003-12-04 Michael Koch + * boehm.cc (_Jv_MarkObj): Access hack_signers field. 2003-12-04 Michael Koch diff --git a/libjava/gnu/java/net/protocol/http/Connection.java b/libjava/gnu/java/net/protocol/http/Connection.java index ae13dff8506..b564afb376f 100644 --- a/libjava/gnu/java/net/protocol/http/Connection.java +++ b/libjava/gnu/java/net/protocol/http/Connection.java @@ -48,10 +48,10 @@ import java.net.ProtocolException; import java.net.Socket; import java.net.URL; import java.net.URLConnection; +import java.util.Iterator; import java.util.Map; import java.util.Vector; import java.util.Hashtable; -import java.util.Enumeration; /** * This subclass of java.net.URLConnection models a URLConnection via @@ -212,12 +212,14 @@ public final class Connection extends HttpURLConnection setRequestProperty ("Host", url.getHost()); // Write all req_props name-value pairs to the output writer. - Enumeration reqKeys = requestProperties.keys(); - Enumeration reqVals = requestProperties.elements(); - - while (reqKeys.hasMoreElements()) - outputWriter.print (reqKeys.nextElement() + ": " + reqVals.nextElement() + "\r\n"); - + Iterator itr = getRequestProperties().entrySet().iterator(); + + while (itr.hasNext()) + { + Map.Entry e = (Map.Entry) itr.next(); + outputWriter.print (e.getKey() + ": " + e.getValue() + "\r\n"); + } + // One more CR-LF indicates end of header. outputWriter.print ("\r\n"); outputWriter.flush(); @@ -234,6 +236,15 @@ public final class Connection extends HttpURLConnection return proxyInUse; } + /** + * Returns an InputStream for reading from this connection. This stream + * will be "queued up" for reading just the contents of the requested file. + * Overrides URLConnection.getInputStream() + * + * @return An InputStream for this connection. + * + * @exception IOException If an error occurs + */ public InputStream getInputStream() throws IOException { if (!connected) @@ -256,6 +267,25 @@ public final class Connection extends HttpURLConnection return socket.getOutputStream(); } + /** + * Overrides java.net.HttpURLConnection.setRequestMethod() in order to + * restrict the available methods to only those we support. + * + * @param method The RequestMethod to use + * + * @exception ProtocolException If the specified method is not valid + */ + public void setRequestMethod (String method) throws ProtocolException + { + method = method.toUpperCase(); + + if (method.equals("GET")) + super.setRequestMethod (method); + else + throw new ProtocolException ("Unsupported or unknown request method " + + method); + } + public String getHeaderField(String name) { if (!connected) @@ -286,6 +316,15 @@ public final class Connection extends HttpURLConnection return hdrHash; } + /** + * This method returns the header field value at the specified numeric + * index. + * + * @param n The index into the header field array + * + * @return The value of the specified header field, or null + * if the specified index is not valid. + */ public String getHeaderField(int n) { if (!connected) @@ -303,6 +342,15 @@ public final class Connection extends HttpURLConnection return null; } + /** + * This method returns the header field key at the specified numeric + * index. + * + * @param n The index into the header field array + * + * @return The name of the header field key, or null if the + * specified index is not valid. + */ public String getHeaderFieldKey(int n) { if (!connected) -- 2.11.4.GIT