[EXAMPLES] MessageTree should be easy to launch from an IDE
We can default to a local resource if no argument is provided.
diff --git a/examples/src/main/java/org/apache/james/mime4j/samples/tree/MessageTree.java b/examples/src/main/java/org/apache/james/mime4j/samples/tree/MessageTree.java
index 17bd138..9cd7fd2 100644
--- a/examples/src/main/java/org/apache/james/mime4j/samples/tree/MessageTree.java
+++ b/examples/src/main/java/org/apache/james/mime4j/samples/tree/MessageTree.java
@@ -362,9 +362,10 @@
}
public static void main(String[] args) {
+ final String fileName = retrieveFileName(args);
try {
final MessageBuilder builder = new DefaultMessageBuilder();
- final Message message = builder.parseMessage(new FileInputStream(args[0]));
+ final Message message = builder.parseMessage(new FileInputStream(fileName));
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
@@ -377,12 +378,19 @@
System.err.println("Usage: org.mime4j.samples.tree.MessageTree"
+ " path/to/message");
} catch (FileNotFoundException e) {
- System.err.println("The file '" + args[0] + "' could not be found.");
+ System.err.println("The file '" + fileName + "' could not be found.");
} catch (IOException e) {
- System.err.println("The file '" + args[0] + "' could not be read.");
+ System.err.println("The file '" + fileName + "' could not be read.");
} catch (MimeException e) {
- System.err.println("The file '" + args[0] + "' is invalid.");
+ System.err.println("The file '" + fileName + "' is invalid.");
}
}
+ private static String retrieveFileName(String[] args) {
+ if (args.length < 1) {
+ return ClassLoader.getSystemResource("mime-example.msg").getFile();
+ }
+ return args[0];
+ }
+
}
diff --git a/examples/src/main/resources/mime-example.msg b/examples/src/main/resources/mime-example.msg
new file mode 100644
index 0000000..5ee0dd5
--- /dev/null
+++ b/examples/src/main/resources/mime-example.msg
@@ -0,0 +1,43 @@
+Date: Fri, 27 Apr 2007 16:08:23 +0200
+From: Foo Bar <bar@example.com>
+MIME-Version: 1.0
+To: foo@example.com
+Subject: Here is the attachment I was waiting for.
+Content-Type: multipart/mixed;
+ boundary="------------090404080405080108000909"
+
+This is a multi-part message in MIME format.
+--------------090404080405080108000909
+Content-Type: text/plain; charset=ISO-8859-15
+Content-Transfer-Encoding: 7bit
+
+Body.
+
+--------------090404080405080108000909
+Content-Type: application/octet-stream;
+ name="data.bin"
+Content-Transfer-Encoding: base64
+Content-Disposition: attachment;
+ filename="data.bin"
+
+lLzmyQjBC2gw/hiUrcy/DDI5K6CBqFSs4NKCF67G5XBzOnSInWpZ+9Uv9IxFpz8rf871xAE+
++y0ZYES9LXDdP12svxsJ4hRsekH2HJ953Kglb3hxko7LlPlxeDX15FKH0VBE8Ggr4RbwoP+c
+mkyyhKyaiV95ycRzRd5ozVDGhmW/eQIZgw3nYJOt99vyPxolkHD8PLevmx4PTteIO4hIWjHG
+XtKCTNwBG0z4cW3EOHWxsvo5v6JUEueDaxfFWKrA/MWP2TkYREXMj+q0XC4MpKZgIjqRL/9E
+s6gqpJTb4eyYL6FBdgrNeLqDQ5ozgu1zaQi9+yuoCABIHKCEPv32W+9Wt/MjMqCnKdk+Zdsw
+ZBna0Fq/168oqKh0S++trpgndHvWZWojNY+rDqnl5o3T9IvTgTuG8IHPSxUODbWFy1vim+jU
+eGNpCfko6DGo5oBCKzg5BTlz2kAED6F1X6/a+w0/9zGJZJ9Tyg6fb8LE7OwDFp1pH99x6SgR
+xa+IFHoXhbjRzkRi/ZRZKrqm4jxvhFTXlx9w70SL0GawHUwuNOgEUKJM75ADmDEEtRB0pQ8S
+RPoKn/b1RLGQPsvHzcqtSJljgbMMBmoiBFkAnzopnVn1RJfBzI6x9YcXtNqtJCTXdHzPg4D+
+WhwkCB0AF7W8EoVqvmlP2g0vAdPz4gR8+I6AFdGQtC52CMhX/1mHAeTjDCnuvTzZvKrACcVB
+9Ea12w10KLYbsgAr2+2vfAdiLUdUZDKHPPtWC+lSrvkTJtivU+YOSw7PCkWF7BIC7pTdp7Wu
+tqGCmVo0eHKfJxXcpkH++9ALeAQ8tfQw9K20JJW18fSAw/hs8fxs5FWjhNpYpUvQlqznN98K
+/pnaXQo373NufYHy1+yT3sSVEwBbClv7yOjrYrmyRe6ojw+ZxXziWk8r+VkFpotwvgW41vOu
+vkhd94rzr1Mj7WNEssTrJOQC5Uda2DPZkHgxBbZch2ru65Jmivr493iTF157c6MZhJUSW+P5
+Xd+WoDrUwzcpMx7QdyZaNSPVsL7uD4xOKoqm4OcdyzEj4qqDvBLA0TJ8sQ4Fp0A5h7nNTuoU
+vxKMan0J4rRKc7T4eswuLEaTPCDtKpsmlTS+rG4jPaCOlPM++qrI6VMgJBZOL/zG7mLub/IY
+KmU6Svelyk91XQF23dhbSqlLjeLlGjwtlHhqRuFASVIgIqcxbsrxa6CSmTrHmxr0NU5hmEWb
+lBPvZwYZhZMu2c/yTirvknIijyTRjFmgwpB73uJHv0oQotC6myXTGNCc0MihBMOsDQs3Fhsl
+JFQcH6VA0bze/FSZoGi+sM90lyrufQngenV1EVptFBx5DQYWEWXKOi2ZS6JQGYRh1R+EXA==
+--------------090404080405080108000909--
+