org.fusesource.fabric.camel.c24io
Class FallbackTypeConverter

java.lang.Object
  extended by org.fusesource.fabric.camel.c24io.FallbackTypeConverter
All Implemented Interfaces:
org.apache.camel.spi.TypeConverterAware, org.apache.camel.TypeConverter

public class FallbackTypeConverter
extends java.lang.Object
implements org.apache.camel.TypeConverter, org.apache.camel.spi.TypeConverterAware

Auto-detect ComplexDataObject instances from the C24 IO and allow them to be transformed to and from sources and sinks.

Version:
$Revision$

Constructor Summary
FallbackTypeConverter()
           
 
Method Summary
<T> T
convertTo(java.lang.Class<T> type, org.apache.camel.Exchange exchange, java.lang.Object value)
           
<T> T
convertTo(java.lang.Class<T> type, java.lang.Object value)
           
protected  biz.c24.io.api.data.Element getElementForType(java.lang.Class<?> type, org.apache.camel.Exchange exchange)
           
protected  biz.c24.io.api.presentation.Sink getSink(biz.c24.io.api.data.ComplexDataObject dataObject, org.apache.camel.Exchange exchange)
           
protected  biz.c24.io.api.presentation.Source getSource(java.lang.Class<?> type, biz.c24.io.api.data.Element element, org.apache.camel.Exchange exchange)
           
protected
<T> boolean
isComplexDataObject(java.lang.Class<T> type)
           
 boolean isPrettyPrint()
           
<T> T
mandatoryConvertTo(java.lang.Class<T> type, org.apache.camel.Exchange exchange, java.lang.Object value)
           
<T> T
mandatoryConvertTo(java.lang.Class<T> type, java.lang.Object value)
           
protected
<T> T
marshall(java.lang.Class<T> type, biz.c24.io.api.data.ComplexDataObject dataObject, org.apache.camel.Exchange exchange)
           
 void setPrettyPrint(boolean prettyPrint)
           
 void setTypeConverter(org.apache.camel.TypeConverter parentTypeConverter)
           
<T> T
tryConvertTo(java.lang.Class<T> type, org.apache.camel.Exchange exchange, java.lang.Object value)
           
<T> T
tryConvertTo(java.lang.Class<T> type, java.lang.Object value)
           
protected
<T> T
unmarshall(java.lang.Class<T> type, java.lang.Object value, org.apache.camel.Exchange exchange)
          Lets try parse via JAXB
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FallbackTypeConverter

public FallbackTypeConverter()
Method Detail

isPrettyPrint

public boolean isPrettyPrint()

setPrettyPrint

public void setPrettyPrint(boolean prettyPrint)

setTypeConverter

public void setTypeConverter(org.apache.camel.TypeConverter parentTypeConverter)
Specified by:
setTypeConverter in interface org.apache.camel.spi.TypeConverterAware

convertTo

public <T> T convertTo(java.lang.Class<T> type,
                       java.lang.Object value)
Specified by:
convertTo in interface org.apache.camel.TypeConverter

convertTo

public <T> T convertTo(java.lang.Class<T> type,
                       org.apache.camel.Exchange exchange,
                       java.lang.Object value)
Specified by:
convertTo in interface org.apache.camel.TypeConverter

isComplexDataObject

protected <T> boolean isComplexDataObject(java.lang.Class<T> type)

unmarshall

protected <T> T unmarshall(java.lang.Class<T> type,
                           java.lang.Object value,
                           org.apache.camel.Exchange exchange)
                throws java.io.IOException
Lets try parse via JAXB

Throws:
java.io.IOException

getElementForType

protected biz.c24.io.api.data.Element getElementForType(java.lang.Class<?> type,
                                                        org.apache.camel.Exchange exchange)

marshall

protected <T> T marshall(java.lang.Class<T> type,
                         biz.c24.io.api.data.ComplexDataObject dataObject,
                         org.apache.camel.Exchange exchange)
              throws java.io.IOException
Throws:
java.io.IOException

getSource

protected biz.c24.io.api.presentation.Source getSource(java.lang.Class<?> type,
                                                       biz.c24.io.api.data.Element element,
                                                       org.apache.camel.Exchange exchange)

getSink

protected biz.c24.io.api.presentation.Sink getSink(biz.c24.io.api.data.ComplexDataObject dataObject,
                                                   org.apache.camel.Exchange exchange)

mandatoryConvertTo

public <T> T mandatoryConvertTo(java.lang.Class<T> type,
                                org.apache.camel.Exchange exchange,
                                java.lang.Object value)
                     throws org.apache.camel.NoTypeConversionAvailableException
Specified by:
mandatoryConvertTo in interface org.apache.camel.TypeConverter
Throws:
org.apache.camel.NoTypeConversionAvailableException

mandatoryConvertTo

public <T> T mandatoryConvertTo(java.lang.Class<T> type,
                                java.lang.Object value)
                     throws org.apache.camel.NoTypeConversionAvailableException
Specified by:
mandatoryConvertTo in interface org.apache.camel.TypeConverter
Throws:
org.apache.camel.NoTypeConversionAvailableException

tryConvertTo

public <T> T tryConvertTo(java.lang.Class<T> type,
                          org.apache.camel.Exchange exchange,
                          java.lang.Object value)
Specified by:
tryConvertTo in interface org.apache.camel.TypeConverter

tryConvertTo

public <T> T tryConvertTo(java.lang.Class<T> type,
                          java.lang.Object value)
Specified by:
tryConvertTo in interface org.apache.camel.TypeConverter


Copyright © 2013 Red Hat. All Rights Reserved.