2016/05/28 - Apache Tuscany has been retired.

For more information, please explore the Attic.



org.apache.tuscany.sca.databinding.impl
Class BaseTransformer<S,T>

java.lang.Object
  extended by org.apache.tuscany.sca.databinding.impl.BaseTransformer<S,T>
All Implemented Interfaces:
Transformer
Direct Known Subclasses:
Array2ArrayTransformer, CallableReference2XMLStreamReader, DataObject2Node, DataObject2NodeInfoTransformer, DataObject2OMElement, DataObject2String, DataObject2XMLStreamReader, Exception2ExceptionTransformer, Externalizable2OMElement, FastInfoset2Node, FastInfoset2SAX, FastInfoset2XMLStreamReader, Group2GroupTransformer, Input2InputTransformer, InputSource2Node, InputSource2SAX, InputStream2Node, InputStream2SAX, ItemList2ObjectTransformer, Java2SimpleTypeTransformer, JavaBean2JSON, JavaBean2JSONObject, JavaBean2XMLStreamReaderTransformer, JavaBean2XMLTransformer, JAXB2Node, JAXB2OMElement, JAXB2SAX, JAXB2String, Job2OMElement, JSON2OMElement, JSON2String, JSON2XMLStreamReader, Node2DataObject, Node2FastInfoset, Node2JAXB, Node2NodeInfoTransformer, Node2OutputStream, Node2SourceTransformer, Node2String, Node2Writer, Node2XmlObject, Node2XMLStreamReader, Node2XObject, NodeInfo2DataObjectTransformer, NodeInfo2JavaArrayTransformer, NodeInfo2NodeTransformer, Object2ValueTransformer, OMElement2Externalizable, OMElement2JAXB, OMElement2Job, OMElement2String, OMElement2XMLStreamReader, OMElement2XObject, Output2OutputTransformer, Reader2JAXB, Reader2Node, Reader2SAX, SAX2DOMPipe, SimpleType2JavaTransformer, SimpleType2ValueTransformer, Source2NodeTransformer, Source2ResultTransformer, Source2StringTransformer, StreamDataPipe, String2DataObject, String2JAXB, String2JSON, String2Node, String2OMElement, String2SAX, String2SourceTransformer, String2XMLStreamReader, Value2JavaArray, Value2ObjectTransformer, Value2SimpleTypeTransformer, Writer2ReaderDataPipe, XML2JavaBeanTransformer, XMLDocument2OMElement, XMLDocument2String, XMLDocument2XMLStreamReader, XMLInputStream2FastInfoset, XmlObject2Node, XmlObject2XMLStreamReader, XMLStreamReader2CallableReference, XMLStreamReader2DataObject, XMLStreamReader2FastInfoset, XMLStreamReader2JAXB, XMLStreamReader2JSON, XMLStreamReader2Node, XMLStreamReader2OMElement, XMLStreamReader2SAX, XMLStreamReader2String, XMLStreamReader2XMLDocument, XMLStreamReader2XmlObject, XObject2Node, XObject2OMElement

public abstract class BaseTransformer<S,T>
extends java.lang.Object
implements Transformer

Base Implementation of Transformer which provides the registration to the transformer registry


Constructor Summary
protected BaseTransformer()
           
 
Method Summary
 java.lang.String getSourceDataBinding()
          Get the source type that this transformer transforms data from.
protected abstract  java.lang.Class<S> getSourceType()
           
 java.lang.String getTargetDataBinding()
          Get the target type that this transformer transforms data into.
protected abstract  java.lang.Class<T> getTargetType()
           
 int getWeight()
          Get the cost of the transformation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseTransformer

protected BaseTransformer()
Method Detail

getSourceType

protected abstract java.lang.Class<S> getSourceType()

getTargetType

protected abstract java.lang.Class<T> getTargetType()

getSourceDataBinding

public java.lang.String getSourceDataBinding()
Description copied from interface: Transformer
Get the source type that this transformer transforms data from. The type is used as the key when the transformer is registered with TransformerRegistry.

Specified by:
getSourceDataBinding in interface Transformer
Returns:
A key identifying the source type

getTargetDataBinding

public java.lang.String getTargetDataBinding()
Description copied from interface: Transformer
Get the target type that this transformer transforms data into. The type is used as the key when the transformer is registered with TransformerRegistry.

Specified by:
getTargetDataBinding in interface Transformer
Returns:
A key identifying the target type

getWeight

public int getWeight()
Description copied from interface: Transformer
Get the cost of the transformation. The weight can be used to choose the most efficient path if there are more than one available from the source to the target.

Specified by:
getWeight in interface Transformer
Returns:
An integer representing the cost of the transformation