Author: rdonkin
Date: Mon Jul 21 13:17:41 2008
New Revision: 678546

URL: http://svn.apache.org/viewvc?rev=678546&view=rev
Log:
MIME4J-55 introduced an IllegalArgumentException. Though this is unlikely to be 
thrown, it would be unfriendly for a RuntimeException to be propogated. 
Document the throw, catch the runtime in the caller and wrap in a checked 
exception.

Modified:
    
james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java
    james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeEntity.java

Modified: 
james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java
URL: 
http://svn.apache.org/viewvc/james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java?rev=678546&r1=678545&r2=678546&view=diff
==============================================================================
--- 
james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java
 (original)
+++ 
james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeBoundaryInputStream.java
 Mon Jul 21 13:17:41 2008
@@ -45,6 +45,7 @@
      * Creates a new MimeBoundaryInputStream.
      * @param s The underlying stream.
      * @param boundary Boundary string (not including leading hyphens).
+     * @throws IllegalArgumentException when boundary is too long
      */
     public MimeBoundaryInputStream(BufferedLineReaderInputStream inbuffer, 
String boundary) 
             throws IOException {

Modified: 
james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeEntity.java
URL: 
http://svn.apache.org/viewvc/james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeEntity.java?rev=678546&r1=678545&r2=678546&view=diff
==============================================================================
--- james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeEntity.java 
(original)
+++ james/mime4j/trunk/src/main/java/org/apache/james/mime4j/MimeEntity.java 
Mon Jul 21 13:17:41 2008
@@ -167,12 +167,17 @@
         if (bufferSize < 4096) {
             bufferSize = 4096;
         }
-        if (mimeStream != null) {
-            mimeStream = new MimeBoundaryInputStream(
-                    new BufferedLineReaderInputStream(mimeStream, bufferSize), 
boundary);
-        } else {
-            inbuffer.ensureCapacity(bufferSize);
-            mimeStream = new MimeBoundaryInputStream(inbuffer, boundary);
+        try {
+            if (mimeStream != null) {
+                mimeStream = new MimeBoundaryInputStream(
+                        new BufferedLineReaderInputStream(mimeStream, 
bufferSize), boundary);
+            } else {
+                inbuffer.ensureCapacity(bufferSize);
+                mimeStream = new MimeBoundaryInputStream(inbuffer, boundary);
+            }
+        } catch (IllegalArgumentException e) {
+            // thrown when boundary is too long
+            throw new MimeException(e.getMessage(), e);
         }
         dataStream = new LineReaderInputStreamAdaptor(mimeStream); 
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to