diff options
author | Michael Koch <konqueror@gmx.de> | 2003-05-02 14:23:21 +0000 |
---|---|---|
committer | Michael Koch <mkoch@gcc.gnu.org> | 2003-05-02 14:23:21 +0000 |
commit | 13a564b36ddea6e9e45660f5e0a079e98d0a3f2f (patch) | |
tree | 7df55d7e034c369ea856b464cd853664ce8751a7 /libjava/java/net | |
parent | e79498768f45a4021b4d6f518958c0dc0accc4dd (diff) | |
download | gcc-13a564b36ddea6e9e45660f5e0a079e98d0a3f2f.zip gcc-13a564b36ddea6e9e45660f5e0a079e98d0a3f2f.tar.gz gcc-13a564b36ddea6e9e45660f5e0a079e98d0a3f2f.tar.bz2 |
2003-05-02 Michael Koch <konqueror@gmx.de>
* java/net/URI.java
(create): Doesnt throws any exceptions.
* java/net/URLConnection.java
(URLConnection): Commend added.
(getExpiration): The header field is called "expires" not
"expiration".
(getHeaderField): Merged documentation with classpath.
(getHeaderFieldInt): Likewise.
(getHeaderFieldDate): Likewise.
(getHeaderFieldKey): Likewise.
(getPermission): Likewise.
(setDefaultUseCaches): Likewise.
(setRequestProperty): Likewise.
(addRequestProperty): Likewise.
(getRequestProperty): Likewise.
(getRequestProperties): Likewise.
(setDefaultRequestProperty): Likewise.
(getDefaultRequestProperty): Likewise.
(guessContentTypeFromStream): Likewise.
(getFileNameMap): Likewise.
(setFileNameMap): Likewise.
(setDoInput): Merged implementation and documentation with classpath.
(setDoOutput): Likewise.
(setAllowUserInteraction): Likewise.
(setDefaultAllowUserInteraction): Likewise.
(setContentHandlerFactory): Made it synchronized, merged documentation
with classpath.
(guessContentTypeFromName): Renamed argument fname to filename to
match classpath, merged documentation with classpath.
From-SVN: r66384
Diffstat (limited to 'libjava/java/net')
-rw-r--r-- | libjava/java/net/URLConnection.java | 156 |
1 files changed, 96 insertions, 60 deletions
diff --git a/libjava/java/net/URLConnection.java b/libjava/java/net/URLConnection.java index f7e8690..2065cad 100644 --- a/libjava/java/net/URLConnection.java +++ b/libjava/java/net/URLConnection.java @@ -180,6 +180,7 @@ public abstract class URLConnection */ protected URLConnection(URL url) { + // Set up all our instance variables this.url = url; allowUserInteraction = defaultAllowUserInteraction; useCaches = defaultUseCaches; @@ -247,7 +248,7 @@ public abstract class URLConnection */ public long getExpiration() { - return getHeaderFieldDate("expiration", 0L); + return getHeaderFieldDate("expires", 0L); } /** @@ -276,11 +277,16 @@ public abstract class URLConnection } /** - * Returns the value of the n-th header field + * Return a String representing the header value at the specified index. + * This allows the caller to walk the list of header fields. The analogous + * getHeaderFieldKey(int) method allows access to the corresponding key + * for this header field + * + * @param index The index into the header field list to retrieve the value for * - * @param num The number of the header field + * @return The header value or null if index is past the end of the headers */ - public String getHeaderField(int num) + public String getHeaderField(int index) { // Subclasses for specific protocols override this. return null; @@ -290,7 +296,9 @@ public abstract class URLConnection * Returns a String representing the value of the header field having * the named key. Returns null if the header field does not exist. * - * @param name The name of the header field + * @param The key of the header field + * + * @return The value of the header field as a String */ public String getHeaderField(String name) { @@ -310,13 +318,15 @@ public abstract class URLConnection } /** - * Returns the value of the header filed name as int. + * Returns the value of the named header field as an int. If the field + * is not present or cannot be parsed as an integer, the default value + * will be returned. * * @param name The name of the header field * @param val The default value * - * @return Returns the value of the header filed or the default value - * if the field is missing or malformed + * @return The value of the header field or the default value if the field + * is missing or malformed */ public int getHeaderFieldInt(String name, int val) { @@ -334,8 +344,9 @@ public abstract class URLConnection } /** - * Returns the value of a header field parsed as date. The result is then - * number of milliseconds since January 1st, 1970 GMT. + * Returns the value of the named header field as a date. This date will + * be the number of seconds since midnight 1/1/1970 GMT or the default + * value if the field is not present or cannot be converted to a date. * * @param name The name of the header field * @param val The dafault date @@ -367,9 +378,12 @@ public abstract class URLConnection * getHeaderField(int) method allows access to the corresponding value for * this tag. * - * @param num The number of the header field + * @param index The index into the header field list to retrieve the key for. + * + * @return The header field key or null if index is past the end + * of the headers. */ - public String getHeaderFieldKey(int num) + public String getHeaderFieldKey(int index) { // Subclasses for specific protocols override this. return null; @@ -432,6 +446,8 @@ public abstract class URLConnection * Note that because of items such as HTTP redirects, the permission * object returned might be different before and after connecting. * + * @return A Permission object + * * @exception IOException If the computation of the permission requires * network or file I/O and an exception occurs while computing it */ @@ -485,18 +501,20 @@ public abstract class URLConnection } /** - * Sets tha value of the doInput field. - * + * Returns the value of a flag indicating whether or not input is going + * to be done for this connection. This default to true unless the + * doOutput flag is set to false, in which case this defaults to false. + * * @param doinput The new value of the doInput field * * @exception IllegalStateException If already connected */ - public void setDoInput(boolean doinput) + public void setDoInput(boolean input) { if (connected) throw new IllegalStateException ("Already connected"); - doInput = doinput; + doInput = input; } /** @@ -512,18 +530,20 @@ public abstract class URLConnection } /** - * Sets the value of the doOutput field + * Returns a boolean flag indicating whether or not output will be done + * on this connection. The default value is false, so this method can + * be used to override the default * - * @param dooutput The new value of the doOutput field + * @param output ture if output is to be done, false otherwise * * @exception IllegalStateException If already connected */ - public void setDoOutput(boolean dooutput) + public void setDoOutput(boolean output) { if (connected) throw new IllegalStateException ("Already connected"); - doOutput = dooutput; + doOutput = output; } /** @@ -542,16 +562,13 @@ public abstract class URLConnection * allowed for this connection. (For example, in order to prompt for * username and password info. * - * @param allowed The new value + * @param allow true if user interaction should be allowed, false otherwise. * * @exception IllegalStateException If already connected */ - public void setAllowUserInteraction(boolean allowed) + public void setAllowUserInteraction(boolean allow) { - if (connected) - throw new IllegalStateException ("Already connected"); - - allowUserInteraction = allowed; + allowUserInteraction = allow; } /** @@ -570,11 +587,11 @@ public abstract class URLConnection * Sets the default flag for whether or not interaction with a user * is allowed. This will be used for all connections unless overridden * - * @param allowed The new default value + * @param allow true to allow user interaction, false otherwise */ - public static void setDefaultAllowUserInteraction(boolean allowed) + public static void setDefaultAllowUserInteraction(boolean allow) { - defaultAllowUserInteraction = allowed; + defaultAllowUserInteraction = allow; } /** @@ -661,7 +678,7 @@ public abstract class URLConnection * Sets the default value used to determine whether or not caching * of documents will be done when possible. * - * @param defaultusecaches The new default value + * @param use true to use caches if possible by default, false otherwise */ public void setDefaultUseCaches(boolean defaultusecaches) { @@ -669,8 +686,9 @@ public abstract class URLConnection } /** - * Sets a property specified by key to value. - * + * Returns the default value used to determine whether or not caching + * of documents will be done when possible. + * * @param key Key of the property to set * @param value Value of the Property to set * @@ -690,9 +708,8 @@ public abstract class URLConnection } /** - * Sets a property specified by key to value. If the property key already - * is assigned to a value it does nothing. - * + * Sets the value of the named request property + * * @param key Key of the property to add * @param value Value of the Property to add * @@ -716,16 +733,16 @@ public abstract class URLConnection } /** - * Returns a property value specified by key. + * Returns the value of the named request property. * - * @param key Key of the property to return + * @param key The name of the property + * + * @return Value of the property * * @exception IllegalStateException If already connected * * @see URLConnection#setRequestProperty(String key, String value) * @see URLConnection#addRequestProperty(String key, String value) - * - * @return Value of the property. */ public String getRequestProperty(String key) { @@ -738,11 +755,13 @@ public abstract class URLConnection } /** - * Returns a map that contains all properties of the request + * Returns an unmodifiable Map containing the request properties. + * + * @return The map of properties * * @exception IllegalStateException If already connected * - * @return The map of properties + * @since 1.4 */ public Map getRequestProperties() { @@ -756,8 +775,8 @@ public abstract class URLConnection * for all connections unless the value of the property is manually * overridden. * - * @param key The key of the property - * @param value The value of the property + * @param key The request property name the default is being set for + * @param value The value to set the default to * * @deprecated 1.3 The method setRequestProperty should be used instead * @@ -774,7 +793,7 @@ public abstract class URLConnection * for all connections unless the value of the property is manually * overridden. * - * @param key The key of the default property + * @param key The request property to return the default value of * * @return The value of the default property or null if not available * @@ -794,13 +813,14 @@ public abstract class URLConnection * Unlike for other set factory methods, this one does not do a security * check prior to setting the factory. * - * @param fac The ContentHandlerFactory + * @param factory The ContentHandlerFactory for this application * * @exception Error If the factory has already been defined * @exception SecurityException If a security manager exists and its * checkSetFactory method doesn't allow the operation */ - public static void setContentHandlerFactory(ContentHandlerFactory fac) + public static synchronized void setContentHandlerFactory + (ContentHandlerFactory fac) { if (factory != null) throw new Error("ContentHandlerFactory already set"); @@ -810,42 +830,55 @@ public abstract class URLConnection SecurityManager s = System.getSecurityManager(); if (s != null) s.checkSetFactory(); + factory = fac; } /** - * Tries to determine the content type of an object, based on the - * specified file name + * Returns the MIME type of a file based on the name of the file. This + * works by searching for the file's extension in a list of file extensions + * and returning the MIME type associated with it. If no type is found, + * then a MIME type of "application/octet-stream" will be returned. + * + * @param filename The filename to determine the MIME type for * - * @param fname The filename to guess the content type from + * @return The MIME type String * * @specnote public since JDK 1.4 */ - public static String guessContentTypeFromName(String fname) + public static String guessContentTypeFromName(String filename) { - int dot = fname.lastIndexOf ("."); + int dot = filename.lastIndexOf ("."); if (dot != -1) { - if (dot == fname.length()) + if (dot == filename.length()) return ("application/octet-stream"); else - fname = fname.substring (dot + 1); + filename = filename.substring (dot + 1); } - String type = MimeTypes.getMimeTypeFromExtension (fname); + String type = MimeTypes.getMimeTypeFromExtension (filename); if (type == null) return("application/octet-stream"); - return(type); + return type; } /** - * Tries to guess the content type of an object, based on the characters - * at the beginning of then input stream + * Returns the MIME type of a stream based on the first few characters + * at the beginning of the stream. This routine can be used to determine + * the MIME type if a server is believed to be returning an incorrect + * MIME type. This method returns "application/octet-stream" if it + * cannot determine the MIME type. + * <p> + * NOTE: Overriding MIME types sent from the server can be obnoxious + * to user's. See Internet Exploder 4 if you don't believe me. + * + * @param is The InputStream to determine the MIME type from * - * @param is The input stream to guess from + * @return The MIME type * * @exception IOException If an error occurs */ @@ -862,6 +895,8 @@ public abstract class URLConnection * This method returns the <code>FileNameMap</code> object being used * to decode MIME types by file extension. * + * @return The <code>FileNameMap</code>. + * * @since 1.2 */ public static FileNameMap getFileNameMap() @@ -870,9 +905,10 @@ public abstract class URLConnection } /** - * Sets a FileNameMap + * This method set the <code>FileNameMap</code> object being used + * to decode MIME types by file extension. * - * @param map The new FileNameMap + * @param map The <code>FileNameMap</code>. * * @exception SecurityException If a security manager exists and its * checkSetFactory method doesn't allow the operation |