This section describes the conversions supported by the master type converter. These conversions are built into the Fuse Mediation Router core.
Usually, the type converter is called through convenience functions, such as
Message.getBody(Class<T> type) or
Message.getHeader(String name, Class<T> type). It is also
possible to invoke the master type converter directly. For example, if you have an exchange
object, exchange, you could convert a given value to a String as
shown in Example 1.4.
Example 1.4. Converting a Value to a String
org.apache.camel.TypeConverter tc = exchange.getContext().getTypeConverter(); String str_value = tc.convertTo(String.class, value);
Fuse Mediation Router provides built-in type converters that perform conversions to and from the following basic types:
java.io.FileStringbyte[]andjava.nio.ByteBufferjava.io.InputStreamandjava.io.OutputStreamjava.io.Readerandjava.io.Writerjava.io.BufferedReaderandjava.io.BufferedWriterjava.io.StringReader
However, not all of these types are inter-convertible. The built-in converter is mainly
focused on providing conversions from the File and String types.
The File type can be converted to any of the preceding types, except
Reader, Writer, and StringReader. The
String type can be converted to File, byte[],
ByteBuffer, InputStream, or StringReader. The
conversion from String to File works by interpreting the string as
a file name. The trio of String, byte[], and
ByteBuffer are completely inter-convertible.
![]() | Note |
|---|---|
You can explicitly specify which character encoding to use for conversion from
|
Fuse Mediation Router provides built-in type converters that perform conversions to and from the following collection types:
Object[]java.util.Setjava.util.List
All permutations of conversions between the preceding collection types are supported.
Fuse Mediation Router provides built-in type converters that perform conversions to and from the following map types:
java.util.Mapjava.util.HashMapjava.util.Hashtablejava.util.Properties
The preceding map types can also be converted into a set, of java.util.Set
type, where the set elements are of the MapEntry<K,V> type.
You can perform type conversions to the following Document Object Model (DOM) types:
org.w3c.dom.Document—convertible frombyte[],String,java.io.File, andjava.io.InputStream.org.w3c.dom.Nodejavax.xml.transform.dom.DOMSource—convertible fromString.javax.xml.transform.Source—convertible frombyte[]andString.
All permutations of conversions between the preceding DOM types are supported.
You can also perform conversions to the javax.xml.transform.sax.SAXSource
type, which supports the SAX event-driven XML parser (see the SAX Web site for details). You can convert to
SAXSource from the following types:
StringInputStreamSourceStreamSourceDOMSource
Fuse Mediation Router also enables you to implement your own custom type converters. For details on how to implement a custom type converter, see Type Converters.






![[Note]](imagesdb/note.gif)


