1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.log4j.or.jms;
19
20 import org.apache.log4j.helpers.LogLog;
21 import org.apache.log4j.or.ObjectRenderer;
22
23 import javax.jms.Message;
24 import javax.jms.JMSException;
25 import javax.jms.DeliveryMode;
26
27
28
29
30
31
32 public class MessageRenderer implements ObjectRenderer {
33
34 public
35 MessageRenderer() {
36 }
37
38
39
40
41
42 public
43 String doRender(Object o) {
44 if(o instanceof Message) {
45 StringBuffer sbuf = new StringBuffer();
46 Message m = (Message) o;
47 try {
48 sbuf.append("DeliveryMode=");
49 switch(m.getJMSDeliveryMode()) {
50 case DeliveryMode.NON_PERSISTENT :
51 sbuf.append("NON_PERSISTENT");
52 break;
53 case DeliveryMode.PERSISTENT :
54 sbuf.append("PERSISTENT");
55 break;
56 default: sbuf.append("UNKNOWN");
57 }
58 sbuf.append(", CorrelationID=");
59 sbuf.append(m.getJMSCorrelationID());
60
61 sbuf.append(", Destination=");
62 sbuf.append(m.getJMSDestination());
63
64 sbuf.append(", Expiration=");
65 sbuf.append(m.getJMSExpiration());
66
67 sbuf.append(", MessageID=");
68 sbuf.append(m.getJMSMessageID());
69
70 sbuf.append(", Priority=");
71 sbuf.append(m.getJMSPriority());
72
73 sbuf.append(", Redelivered=");
74 sbuf.append(m.getJMSRedelivered());
75
76 sbuf.append(", ReplyTo=");
77 sbuf.append(m.getJMSReplyTo());
78
79 sbuf.append(", Timestamp=");
80 sbuf.append(m.getJMSTimestamp());
81
82 sbuf.append(", Type=");
83 sbuf.append(m.getJMSType());
84
85
86
87
88
89
90
91
92 } catch(JMSException e) {
93 LogLog.error("Could not parse Message.", e);
94 }
95 return sbuf.toString();
96 } else {
97 return o.toString();
98 }
99 }
100 }