Merge remote-tracking branch 'dmak/MIME4J-280'
diff --git a/dom/src/main/java/org/apache/james/mime4j/field/ContentDispositionFieldImpl.java b/dom/src/main/java/org/apache/james/mime4j/field/ContentDispositionFieldImpl.java
index fcccd70..345df49 100644
--- a/dom/src/main/java/org/apache/james/mime4j/field/ContentDispositionFieldImpl.java
+++ b/dom/src/main/java/org/apache/james/mime4j/field/ContentDispositionFieldImpl.java
@@ -224,7 +224,7 @@
} catch (ParseException e) {
parseException = e;
} catch (TokenMgrError e) {
- parseException = new ParseException(e.getMessage());
+ parseException = new ParseException(e);
}
final String dispositionType = parser.getDispositionType();
diff --git a/dom/src/main/java/org/apache/james/mime4j/field/ContentTypeFieldImpl.java b/dom/src/main/java/org/apache/james/mime4j/field/ContentTypeFieldImpl.java
index eb5a7a4..01a9f81 100644
--- a/dom/src/main/java/org/apache/james/mime4j/field/ContentTypeFieldImpl.java
+++ b/dom/src/main/java/org/apache/james/mime4j/field/ContentTypeFieldImpl.java
@@ -197,7 +197,7 @@
} catch (ParseException e) {
parseException = e;
} catch (TokenMgrError e) {
- parseException = new ParseException(e.getMessage());
+ parseException = new ParseException(e);
}
mediaType = parser.getType();
diff --git a/dom/src/main/java/org/apache/james/mime4j/field/DateTimeFieldImpl.java b/dom/src/main/java/org/apache/james/mime4j/field/DateTimeFieldImpl.java
index cc854ed..6a76200 100644
--- a/dom/src/main/java/org/apache/james/mime4j/field/DateTimeFieldImpl.java
+++ b/dom/src/main/java/org/apache/james/mime4j/field/DateTimeFieldImpl.java
@@ -73,7 +73,7 @@
} catch (ParseException e) {
parseException = e;
} catch (TokenMgrError e) {
- parseException = new ParseException(e.getMessage());
+ parseException = new ParseException(e);
}
parsed = true;
diff --git a/dom/src/main/java/org/apache/james/mime4j/field/address/Builder.java b/dom/src/main/java/org/apache/james/mime4j/field/address/Builder.java
index 0b6ae66..d796c82 100644
--- a/dom/src/main/java/org/apache/james/mime4j/field/address/Builder.java
+++ b/dom/src/main/java/org/apache/james/mime4j/field/address/Builder.java
@@ -70,16 +70,16 @@
try {
name = DecoderUtil.decodeEncodedWords(name, monitor);
} catch (IllegalArgumentException e) {
- throw new ParseException(e.getMessage());
+ throw new ParseException(e);
}
Mailbox mb = buildAngleAddr((ASTangle_addr) n2);
return new Mailbox(name, mb.getRoute(), mb.getLocalPart(),
mb.getDomain());
} else {
- throw new ParseException();
+ throw new ParseException("Address \"group_body\" or \"angle_addr\" is expected but got \"" + n + "\"");
}
} else {
- throw new ParseException();
+ throw new ParseException("Address \"phrase\" is expected but got \"" + n + "\"");
}
}
@@ -91,7 +91,7 @@
if (n instanceof ASTmailbox)
results.add(buildMailbox((ASTmailbox) n, monitor));
else
- throw new ParseException();
+ throw new ParseException("Address \"mailbox\" is expected but got \"" + n + "\"");
}
return new MailboxList(results, true);
}
@@ -106,7 +106,7 @@
} else if (n instanceof ASTname_addr) {
return buildNameAddr((ASTname_addr) n, monitor);
} else {
- throw new ParseException();
+ throw new ParseException("Address \"addr_spec\" or \"angle_addr\" or \"name_addr\" is expected but got \"" + n + "\"");
}
}
@@ -117,7 +117,7 @@
if (n instanceof ASTphrase) {
name = buildString((ASTphrase) n, false);
} else {
- throw new ParseException();
+ throw new ParseException("Address \"phrase\" is expected but got \"" + n + "\"");
}
n = it.next();
@@ -125,13 +125,13 @@
try {
name = DecoderUtil.decodeEncodedWords(name, monitor);
} catch (IllegalArgumentException e) {
- throw new ParseException(e.getMessage());
+ throw new ParseException(e);
}
Mailbox mb = buildAngleAddr((ASTangle_addr) n);
return new Mailbox(name, mb.getRoute(), mb.getLocalPart(),
mb.getDomain());
} else {
- throw new ParseException();
+ throw new ParseException("Address \"angle_addr\" is expected but got \"" + n + "\"");
}
}
@@ -146,12 +146,12 @@
// do nothing
}
else
- throw new ParseException();
+ throw new ParseException("Address \"route\" or \"addr_spec\" is expected but got \"" + n + "\"");
if (n instanceof ASTaddr_spec)
return buildAddrSpec(route, (ASTaddr_spec) n);
else
- throw new ParseException();
+ throw new ParseException("Address \"addr_spec\" is expected but got \"" + n + "\"");
}
private DomainList buildRoute(ASTroute node) throws ParseException {
@@ -162,7 +162,7 @@
if (n instanceof ASTdomain)
results.add(buildString((ASTdomain) n, true));
else
- throw new ParseException();
+ throw new ParseException("Address \"domain\" is expected but got \"" + n + "\"");
}
return new DomainList(results);
}
diff --git a/dom/src/main/javacc/org/apache/james/mime4j/field/mimeversion/MimeVersionParser.jj b/dom/src/main/javacc/org/apache/james/mime4j/field/mimeversion/MimeVersionParser.jj
index 39b6bb5..54a25a4 100644
--- a/dom/src/main/javacc/org/apache/james/mime4j/field/mimeversion/MimeVersionParser.jj
+++ b/dom/src/main/javacc/org/apache/james/mime4j/field/mimeversion/MimeVersionParser.jj
@@ -84,7 +84,7 @@
this.major = Integer.parseInt(major.image);
this.minor = Integer.parseInt(minor.image);
} catch (NumberFormatException e) {
- throw new ParseException(e.getMessage());
+ throw new ParseException(e);
}
}
}
diff --git a/dom/src/main/jjtree/org/apache/james/mime4j/field/address/AddressListParser.jjt b/dom/src/main/jjtree/org/apache/james/mime4j/field/address/AddressListParser.jjt
index b6a7cd8..51feff1 100644
--- a/dom/src/main/jjtree/org/apache/james/mime4j/field/address/AddressListParser.jjt
+++ b/dom/src/main/jjtree/org/apache/james/mime4j/field/address/AddressListParser.jjt
@@ -77,7 +77,7 @@
parseAddressList0();
return (ASTaddress_list) jjtree.rootNode();
} catch (TokenMgrError tme) {
- throw new ParseException(tme.getMessage());
+ throw new ParseException(tme);
}
}
@@ -86,7 +86,7 @@
parseAddress0();
return (ASTaddress) jjtree.rootNode();
} catch (TokenMgrError tme) {
- throw new ParseException(tme.getMessage());
+ throw new ParseException(tme);
}
}
@@ -95,7 +95,7 @@
parseMailbox0();
return (ASTmailbox) jjtree.rootNode();
} catch (TokenMgrError tme) {
- throw new ParseException(tme.getMessage());
+ throw new ParseException(tme);
}
}