1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.ws.transport.jms;
18
19 import java.io.ByteArrayInputStream;
20 import java.io.FilterInputStream;
21 import java.io.IOException;
22 import java.io.InputStream;
23 import javax.jms.JMSException;
24 import javax.jms.TextMessage;
25
26 import org.springframework.util.Assert;
27
28
29
30
31
32
33
34 class TextMessageInputStream extends FilterInputStream {
35
36 TextMessageInputStream(TextMessage message, String encoding) throws IOException {
37 super(createInputStream(message, encoding));
38 }
39
40 private static InputStream createInputStream(TextMessage message, String encoding) throws IOException {
41 Assert.notNull(message, "'message' must not be null");
42 Assert.notNull(encoding, "'encoding' must not be null");
43 try {
44 String text = message.getText();
45 byte[] contents = text != null ? text.getBytes(encoding) : new byte[0];
46 return new ByteArrayInputStream(contents);
47 }
48 catch (JMSException ex) {
49 throw new JmsTransportException(ex);
50 }
51 }
52 }