Package com.luciad.datamodel.transformation
This package provides an API to support data transformations from one model to another model. These transformations can be bi-directional such that transformations from one model to another and back are supported. For all of this to work, the models must expose their data as data objects.
The main classes provided by this package are:
TLcdTransformer
: main starting point that support transforming an object from one model to another.ILcdObjectTransformation
: basic building block for creating model transformations.TLcdDataModelMapping
: supporting class that simplifies the configuration of a transformer.
To set up a transformation from one model to another, first a TLcdTransformer
must be
created. Then this transformer needs to be configured such that it can transform objects
from the source model to the target model (and optionally vice-versa). Basically for each
type in the source model, an ILcdObjectTransformation
should be registered.
Such a transformation is responsible for transforming an object of the source type
into the target type. In case the source and target data models are alike (meaning that source and
target types are more or less similar), TLcdDataModelMapping
can be used
to simplify the configuration of the transformer. TLcdDataModelMapping
instances
provide support to automatically map types from the source model to the target model. As such,
only the parts where the model are really different need to be explicitly mapped.
- Since:
- 11.0
-
ClassDescriptionSimple implementation of
ILcdObjectTransformation
for invertible transformations that implements the inverse transformation by delegation to theALcdObjectTransformation.invert(Object, Map)
method.Transformation that is capable of transforming the value of a single property of a source object to a target object.Transformation that is responsible for transforming a given object into another object.Class that simplifies the configuration of aTLcdTransformer
.The responsibility of this class is to validate aTLcdDataModelMapping
.TransformationIssue that indicates that the source property can't be transformed into the target property because no type transformation can be found to transform the source property's type into the target property's type.TransformationIssue that indicates that the source type can't be completely mapped to the target type.TransformationIssue that contains a collection of type of the target data model for which no corresponding source type exists.TransformationIssue that indicates that no transformation is defined for the given source type.Abstract representation of an issue with the data model transformation.This class is used to build anILcdObjectTransformation
that transforms instances of one data object type into another data object type.The responsibility of this class is to provideILcdObjectTransformation
instances to transform from a sourceTLcdDataType
to a targetTLcdDataType
.Object that can transform an object from one model to another.