org.apache.tuscany.sca.interfacedef
Interface DataType<L>

All Superinterfaces:
java.lang.Cloneable

public interface DataType<L>
extends java.lang.Cloneable

Representation of the type of data associated with an operation. Data is represented in two forms: the physical form used by the runtime and a logical form used by the assembly. The physical form is a Java Type because the runtime is written in Java. This may be the same form used by the application but it may not; for example, an application that is performing stream processing may want a physical form such as an InputStream to semantially operate on application data such as a purchase order. The logical description is that used by the assembly model and is an identifier into some well-known type space; examples may be a Java type represented by its Class or an XML type represented by its QName. Every data type may also contain metadata describing the expected data; for example, it could specify a preferred data binding technology or the size of a typical instance.

Version:
$Rev: 537404 $ $Date: 2007-05-12 13:51:42 +0100 (Sat, 12 May 2007) $

Method Summary
 java.lang.Object clone()
           
 java.lang.String getDataBinding()
           
 L getLogical()
          Returns the logical identifier used by the assembly.
 java.lang.Class getPhysical()
          Returns the physical type used by the runtime.
 void setDataBinding(java.lang.String dataBinding)
           
 void setLogical(L logical)
           
 void setPhysical(java.lang.Class cls)
          Set the java type for the data
 

Method Detail

setPhysical

void setPhysical(java.lang.Class cls)
Set the java type for the data

Parameters:
cls -

getPhysical

java.lang.Class getPhysical()
Returns the physical type used by the runtime.

Returns:
the physical type used by the runtime

getLogical

L getLogical()
Returns the logical identifier used by the assembly. The type of this value identifies the logical type system in use. Known values are:

Returns:
the logical type name

getDataBinding

java.lang.String getDataBinding()
Returns:

setDataBinding

void setDataBinding(java.lang.String dataBinding)
Parameters:
dataBinding - the dataBinding to set

clone

java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Returns:
Throws:
java.lang.CloneNotSupportedException

setLogical

void setLogical(L logical)
Parameters:
logical - the logical to set