diff options
| author | Mark Wielaard <mark@klomp.org> | 2002-10-18 20:40:49 +0000 |
|---|---|---|
| committer | Mark Wielaard <mark@klomp.org> | 2002-10-18 20:40:49 +0000 |
| commit | 6196cbe8c1860676b2f2a984312582a67fcacace (patch) | |
| tree | 81d299565805ffaf0e5c672087e0b63f8c8cd7b8 /gnu/java/net/protocol/jar/Handler.java | |
| parent | 384678bfae8316cdb6a6cd06d05d7f89398cbce0 (diff) | |
| download | classpath-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.java | 10 |
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(); } |
