@Test public void addingOutboundAttachmentsRespectOrder() { InternalMessage message = InternalMessage.builder() .payload(TypedValue.of("test")) .mediaType(TEXT) .addOutboundAttachment("another", new DataHandler(new ByteArrayDataSource("no".getBytes(), TEXT, "another"))) .addOutboundAttachment("field1", new DataHandler(new ByteArrayDataSource("yes".getBytes(), TEXT, "field1"))) .exceptionPayload(new DefaultExceptionPayload(new NullPointerException("error"))) .build(); validateAttachments(message.getOutboundAttachmentNames()); }
@Test public void outboundAttachmentsRespectOrder() { InternalMessage message = InternalMessage.builder() .payload(TypedValue.of("test")) .mediaType(TEXT) .outboundAttachments(getAttachments()) .exceptionPayload(new DefaultExceptionPayload(new NullPointerException("error"))) .build(); validateAttachments(message.getOutboundAttachmentNames()); }
@Override public Set<String> keySet() { return ((InternalMessage) event.getMessage()).getOutboundAttachmentNames(); }
private void copyMessageAttributes(InternalMessage message) { this.exceptionPayload = message.getExceptionPayload(); message.getInboundPropertyNames().forEach(key -> { if (message.getInboundPropertyDataType(key) != null) { addInboundProperty(key, message.getInboundProperty(key), message.getInboundPropertyDataType(key)); } else { addInboundProperty(key, message.getInboundProperty(key)); } }); message.getOutboundPropertyNames().forEach(key -> { if (message.getOutboundPropertyDataType(key) != null) { addOutboundProperty(key, message.getOutboundProperty(key), message.getOutboundPropertyDataType(key)); } else { addOutboundProperty(key, message.getOutboundProperty(key)); } }); message.getInboundAttachmentNames().forEach(name -> addInboundAttachment(name, message.getInboundAttachment(name))); message.getOutboundAttachmentNames().forEach(name -> addOutboundAttachment(name, message.getOutboundAttachment(name))); }