1
2
3
4
5
6
7
8
9
10
11 package org.mule.providers.rmi;
12
13 import org.mule.impl.ThreadSafeAccess;
14 import org.mule.providers.AbstractMessageAdapter;
15 import org.mule.umo.provider.MessageTypeNotSupportedException;
16
17
18
19
20
21 public class RmiMessageAdapter extends AbstractMessageAdapter
22 {
23
24
25
26 private static final long serialVersionUID = -1765089871661318129L;
27
28 private final Object message;
29
30 public RmiMessageAdapter(Object message) throws MessageTypeNotSupportedException
31 {
32 if (message == null)
33 {
34 throw new MessageTypeNotSupportedException(null, getClass());
35 }
36 this.message = message;
37 }
38
39 protected RmiMessageAdapter(RmiMessageAdapter template)
40 {
41 super(template);
42 message = template.message;
43 }
44
45 public byte[] getPayloadAsBytes() throws Exception
46 {
47 return convertToBytes(getPayload());
48 }
49
50
51
52
53
54
55
56
57
58 public String getPayloadAsString(String encoding) throws Exception
59 {
60 return message.toString();
61 }
62
63 public Object getPayload()
64 {
65 return message;
66 }
67
68 public ThreadSafeAccess newThreadCopy()
69 {
70 return new RmiMessageAdapter(this);
71 }
72
73 }