1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.file.transformers;
12
13 import org.mule.api.transformer.TransformerException;
14 import org.mule.transformer.types.DataTypeFactory;
15
16 import java.io.File;
17 import java.io.UnsupportedEncodingException;
18
19
20
21
22 public class FileToString extends FileToByteArray
23 {
24
25 public FileToString()
26 {
27 registerSourceType(DataTypeFactory.create(File.class));
28 registerSourceType(DataTypeFactory.INPUT_STREAM);
29 registerSourceType(DataTypeFactory.BYTE_ARRAY);
30 setReturnDataType(DataTypeFactory.STRING);
31 }
32
33
34
35
36
37
38
39
40
41 @Override
42 public Object doTransform(Object src, String encoding) throws TransformerException
43 {
44 byte[] bytes;
45
46 if (src instanceof byte[])
47 {
48 bytes = (byte[])src;
49 }
50 else
51 {
52 bytes = (byte[]) super.doTransform(src, encoding);
53 }
54
55 try
56 {
57 return new String(bytes, encoding);
58 }
59 catch (UnsupportedEncodingException uee)
60 {
61 throw new TransformerException(this, uee);
62 }
63 }
64
65 }