Search in sources :

Example 51 with Attachment

use of org.apache.cxf.message.Attachment in project cxf by apache.

the class WrappedAttachmentsTest method testCreateAndModify.

@Test
public void testCreateAndModify() {
    Map<String, DataHandler> content = new HashMap<>();
    content.put("att-1", new DataHandler(new ByteArrayDataSource("Hello world!".getBytes(), "text/plain")));
    content.put("att-2", new DataHandler(new ByteArrayDataSource("Hola mundo!".getBytes(), "text/plain")));
    WrappedAttachments attachments = new WrappedAttachments(content);
    Attachment att3 = new AttachmentImpl("att-3", new DataHandler(new ByteArrayDataSource("Bonjour tout le monde!".getBytes(), "text/plain")));
    assertEquals(2, attachments.size());
    assertFalse(attachments.isEmpty());
    assertTrue(attachments.containsAll(attachments));
    List<String> testCollection = new ArrayList<>();
    testCollection.add("Some value");
    assertFalse(attachments.containsAll(testCollection));
    attachments.add(att3);
    assertEquals(3, attachments.size());
    attachments.add(att3);
    assertEquals(3, attachments.size());
    attachments.remove(att3);
    assertEquals(2, attachments.size());
    Attachment attx = attachments.iterator().next();
    attachments.remove(attx);
    assertEquals(1, attachments.size());
    // NOPMD - explicitly test this
    Attachment[] atts = attachments.toArray(new Attachment[0]);
    assertEquals(1, atts.length);
    assertEquals("att-1".equals(attx.getId()) ? "att-2" : "att-1", atts[0].getId());
    // NOPMD - explicitly test this
    atts = attachments.toArray(new Attachment[attachments.size()]);
    assertEquals(1, atts.length);
    assertEquals("att-1".equals(attx.getId()) ? "att-2" : "att-1", atts[0].getId());
    // NOPMD - explicitly test this
    Object[] o = attachments.toArray();
    assertEquals(1, o.length);
    Attachment a = (Attachment) o[0];
    assertEquals("att-1".equals(attx.getId()) ? "att-2" : "att-1", a.getId());
    attachments.clear();
    assertTrue(attachments.isEmpty());
    assertTrue(content.isEmpty());
}
Also used : HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) Attachment(org.apache.cxf.message.Attachment) DataHandler(javax.activation.DataHandler) AttachmentImpl(org.apache.cxf.attachment.AttachmentImpl) ByteArrayDataSource(javax.mail.util.ByteArrayDataSource) Test(org.junit.Test)

Aggregations

Attachment (org.apache.cxf.message.Attachment)51 DataHandler (javax.activation.DataHandler)18 Test (org.junit.Test)18 InputStream (java.io.InputStream)14 Message (org.apache.cxf.message.Message)14 ByteArrayInputStream (java.io.ByteArrayInputStream)13 AttachmentImpl (org.apache.cxf.attachment.AttachmentImpl)12 ByteArrayOutputStream (java.io.ByteArrayOutputStream)11 IOException (java.io.IOException)11 ArrayList (java.util.ArrayList)11 MessageImpl (org.apache.cxf.message.MessageImpl)11 HashMap (java.util.HashMap)10 List (java.util.List)9 PushbackInputStream (java.io.PushbackInputStream)7 ByteArrayDataSource (javax.mail.util.ByteArrayDataSource)6 Fault (org.apache.cxf.interceptor.Fault)6 BindingOperationInfo (org.apache.cxf.service.model.BindingOperationInfo)6 Map (java.util.Map)5 OutputStream (java.io.OutputStream)4 TreeMap (java.util.TreeMap)4