KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > javax > mail > internet > MimeMultipartTest


1 /**
2  *
3  * Copyright 2005 The Apache Software Foundation
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 //
19
// This source code implements specifications defined by the Java
20
// Community Process. In order to remain compliant with the specification
21
// DO NOT add / change / or delete method signatures!
22
//
23
package javax.mail.internet;
24
25 import java.io.IOException;
26 import java.io.OutputStream;
27 import java.awt.datatransfer.DataFlavor;
28 import java.awt.datatransfer.UnsupportedFlavorException;
29 import javax.mail.MessagingException;
30 import javax.activation.CommandMap;
31 import javax.activation.DataHandler;
32 import javax.activation.MailcapCommandMap;
33 import javax.activation.DataContentHandler;
34 import javax.activation.DataSource;
35
36 import junit.framework.TestCase;
37
38 /**
39  * @version $Rev$ $Date$
40  */

41 public class MimeMultipartTest extends TestCase {
42     private CommandMap defaultMap;
43
44     public void testWriteTo() throws MessagingException, IOException {
45         MimeMultipart mp = new MimeMultipart();
46         MimeBodyPart part1 = new MimeBodyPart();
47         part1.setContent("Hello World", "text/plain");
48         mp.addBodyPart(part1);
49         MimeBodyPart part2 = new MimeBodyPart();
50         part2.setContent("Hello Again", "text/plain");
51         mp.addBodyPart(part2);
52         mp.writeTo(System.out);
53     }
54
55     protected void setUp() throws Exception {
56         defaultMap = CommandMap.getDefaultCommandMap();
57         MailcapCommandMap myMap = new MailcapCommandMap();
58         myMap.addMailcap("text/plain;; x-java-content-handler=" + DummyTextHandler.class.getName());
59         CommandMap.setDefaultCommandMap(myMap);
60     }
61
62     protected void tearDown() throws Exception {
63         CommandMap.setDefaultCommandMap(defaultMap);
64     }
65
66     public static class DummyTextHandler implements DataContentHandler {
67         public DataFlavor[] getTransferDataFlavors() {
68             return new DataFlavor[0]; //To change body of implemented methods use File | Settings | File Templates.
69
}
70
71         public Object getTransferData(DataFlavor df, DataSource ds) throws UnsupportedFlavorException, IOException {
72             return null; //To change body of implemented methods use File | Settings | File Templates.
73
}
74
75         public Object getContent(DataSource ds) throws IOException {
76             return null; //To change body of implemented methods use File | Settings | File Templates.
77
}
78
79         public void writeTo(Object obj, String mimeType, OutputStream os) throws IOException {
80             os.write(((String)obj).getBytes());
81         }
82     }
83
84     public static class DummyMultipartHandler implements DataContentHandler {
85         public DataFlavor[] getTransferDataFlavors() {
86             return new DataFlavor[0]; //To change body of implemented methods use File | Settings | File Templates.
87
}
88
89         public Object getTransferData(DataFlavor df, DataSource ds) throws UnsupportedFlavorException, IOException {
90             return null; //To change body of implemented methods use File | Settings | File Templates.
91
}
92
93         public Object getContent(DataSource ds) throws IOException {
94             return null; //To change body of implemented methods use File | Settings | File Templates.
95
}
96
97         public void writeTo(Object obj, String mimeType, OutputStream os) throws IOException {
98             os.write(((String)obj).getBytes());
99         }
100     }
101 }
102
Popular Tags