summaryrefslogtreecommitdiff
path: root/gnu/java/net/protocol/jar/Handler.java
diff options
context:
space:
mode:
authorMark Wielaard <mark@klomp.org>2002-10-18 20:40:49 +0000
committerMark Wielaard <mark@klomp.org>2002-10-18 20:40:49 +0000
commit6196cbe8c1860676b2f2a984312582a67fcacace (patch)
tree81d299565805ffaf0e5c672087e0b63f8c8cd7b8 /gnu/java/net/protocol/jar/Handler.java
parent384678bfae8316cdb6a6cd06d05d7f89398cbce0 (diff)
downloadclasspath-6196cbe8c1860676b2f2a984312582a67fcacace.tar.gz
Merged patches from Wu Gansha <gansha.wu@intel.com>:
* gnu/java/io/PlatformHelper.java (INITIAL_MAX_PATH): new constant. (toCanonicalForm): Use new constant to optimize StringBuffer usage. Return lowercase path when isWindows == true. * gnu/java/lang/SystemClassLoader.java (classpath): New static field. (pathinfos): Likewise. (getSystemResource): Refactored, cache partial result for each path item in classpath. * gnu/java/net/protocol/file/Handler.java (toExternalForm): New method implementation specific to file protocol. * gnu/java/net/protocol/http/HttpURLConnection.java (buffered_out_stream): New field. (connect): Don't set in_stream, wrap out_stream BufferedOutputStream. Move sending request and receiveing reesponce to new methods. (sendRequest): New method. (receiveReply): Likewise. (setRequestMethod): Accept "POST". (getInputStream): When in_stream == null, call SendRequest() and ReceiveReply(). (getOutputStream): New method. * gnu/java/net/protocol/jar/Handler.java (toExternalForm): New optimized method. * gnu/java/net/protocol/jar/JarURLConnection.java (getContentLength): New method. * java/net/URL.java (URL): Remove toLowerCase() when calling this(). * java/net/URLConnection.java (req_props): Made final, set in constructor using Hashtable(Map). (setRequestProperty): Not synchronized. (getRequestProperties): New method. * java/net/URLStreamHandler (toExternalForm): Use StringBuffer.
Diffstat (limited to 'gnu/java/net/protocol/jar/Handler.java')
-rw-r--r--gnu/java/net/protocol/jar/Handler.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/gnu/java/net/protocol/jar/Handler.java b/gnu/java/net/protocol/jar/Handler.java
index ff463b6f1..140274905 100644
--- a/gnu/java/net/protocol/jar/Handler.java
+++ b/gnu/java/net/protocol/jar/Handler.java
@@ -150,7 +150,15 @@ toExternalForm(URL url)
{
String file = url.getFile();
- return "jar:" + file;
+ // return "jar:" + file;
+ // Performance!!:
+ // Do the concatenation mannually to avoid resize StringBuffer's
+ // internal buffer.
+ StringBuffer sb = new StringBuffer(file.length() + 5);
+ sb.append("jar:");
+ sb.append(file);
+
+ return sb.toString();
}