MIME4J-5 Performance patch 3, https://issues.apache.org/jira/browse/MIME4J-5. Contrib...
commitd438fb0d1d9f2c25e85114c1ecc73263c1cc21d5
authorRobert Burrell Donkin <rdonkin@apache.org>
Tue, 8 Jul 2008 20:44:06 +0000 (8 20:44 +0000)
committerRobert Burrell Donkin <rdonkin@apache.org>
Tue, 8 Jul 2008 20:44:06 +0000 (8 20:44 +0000)
treeeb6134f3093703a1c6fadd12507c3ef4be1de431
parent0d9520252504ee6983f9302f890bc0c3cda030d8
MIME4J-5 Performance patch 3, https://issues.apache.org/jira/browse/MIME4J-5. Contributed by Oleg Kalnichevski. This patch eliminates one-byte-reads for common use cases; eliminates the synchronised StringBuffer and reduces memory footprint.

git-svn-id: https://svn.eu.apache.org/repos/asf/james/mime4j/trunk@674944 13f79535-47bb-0310-9956-ffa450edef68
20 files changed:
src/main/java/org/apache/james/mime4j/AbstractEntity.java
src/main/java/org/apache/james/mime4j/BasicBufferingInputStream.java [copied from src/main/java/org/apache/james/mime4j/BufferingInputStream.java with 56% similarity]
src/main/java/org/apache/james/mime4j/BufferingInputStream.java
src/main/java/org/apache/james/mime4j/BufferingInputStreamAdaptor.java [moved from src/main/java/org/apache/james/mime4j/EOFSensitiveInputStream.java with 62% similarity]
src/main/java/org/apache/james/mime4j/ByteArrayBuffer.java [new file with mode: 0644]
src/main/java/org/apache/james/mime4j/CharArrayBuffer.java [new file with mode: 0644]
src/main/java/org/apache/james/mime4j/Event.java
src/main/java/org/apache/james/mime4j/InputBuffer.java
src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java
src/main/java/org/apache/james/mime4j/MimeEntity.java
src/main/java/org/apache/james/mime4j/MimeTokenStream.java
src/main/java/org/apache/james/mime4j/util/MessageUtils.java
src/test/java/org/apache/james/mime4j/BasicBufferingInputStreamTest.java [new file with mode: 0644]
src/test/java/org/apache/james/mime4j/BufferingInputStreamAdaptorTest.java [new file with mode: 0644]
src/test/java/org/apache/james/mime4j/InputBufferTest.java
src/test/java/org/apache/james/mime4j/MimeBoundaryInputStreamTest.java
src/test/java/org/apache/james/mime4j/MimeEntityTest.java
src/test/java/org/apache/james/mime4j/StrictMimeTokenStreamTest.java
src/test/java/org/apache/james/mime4j/TestByteArrayBuffer.java [new file with mode: 0644]
src/test/java/org/apache/james/mime4j/TestCharArrayBuffer.java [new file with mode: 0644]