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