|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.gcube.datatransformation.datatransformationlibrary.model.graph.TransformationsGraphImpl
public class TransformationsGraphImpl
Transformations� Graph is responsible to find transformationUnit units which can be used in order to perform a transformationUnit for an object, from its content type (source) to a target content type. The transformations� graph consists of nodes which correspond to content types and edges to transformationUnit units.
The selection of the transformationUnit units is based to the following rules. In the beginning the graph searches for transformationUnit units which have exact match of the source and target content types. If no one is available, the graph tries to search for a path in the graph from the source content type to the target content type and thus create a composite transformationUnit unit. If the graph does not manage to find a path, it searches for existing transformationUnit units or paths but for content types which do not have exact match i.e. the media type and the subtype identifier are always taken under consideration but for the parameters the rule is that if the parameters of the content type (source / target) denoted in the transformationUnit unit are contained and their values match with the object�s content type / the target of the transformationUnit respectively, then the transformationUnit unit is supposed to support the transformationUnit even if the source�s object / target content type contains more parameters.
| Nested Class Summary | |
|---|---|
protected static class |
TransformationsGraphImpl.Consistency
|
| Constructor Summary | |
|---|---|
TransformationsGraphImpl(IManager imanager)
Instantiates a new TransformationsGraphImpl |
|
| Method Summary | |
|---|---|
void |
destroy()
Destroys the graph. |
ArrayList<TransformationUnit> |
findAnyTransformationUnits(ContentType sourceContentType,
ContentType targetContentType,
boolean createAndPublishCompositeTP)
Finds Transformation Units from the sourceContentType to the targetContentType. |
ArrayList<TransformationUnit> |
findApplicableTransformationUnits(ContentType sourceContentType,
ContentType targetContentType,
boolean createAndPublishCompositeTP)
Finds applicable Transformation Units from the sourceContentType to the targetContentType. |
ArrayList<ContentType> |
findAvailableTargetContentTypes(ContentType sourceContentType)
Finds the available target ContentTypes from the sourceContentType. |
protected void |
update()
Updates the TransformationsGraphImpl |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public TransformationsGraphImpl(IManager imanager)
imanager - The IManager from which the graph will read information.| Method Detail |
|---|
public void destroy()
TransformationsGraph
destroy in interface TransformationsGraphTransformationsGraph.destroy()
protected void update()
throws Exception
Exception
public ArrayList<TransformationUnit> findApplicableTransformationUnits(ContentType sourceContentType,
ContentType targetContentType,
boolean createAndPublishCompositeTP)
TransformationsGraph
findApplicableTransformationUnits in interface TransformationsGraphsourceContentType - The ContentType of the source DataElement.targetContentType - The ContentType of the target DataElement.createAndPublishCompositeTP - If true then a new composite TransformationProgram is created and published if no available TransformationProgram exists.
TransformationsGraph.findApplicableTransformationUnits(org.gcube.datatransformation.datatransformationlibrary.model.ContentType, org.gcube.datatransformation.datatransformationlibrary.model.ContentType, boolean)
public ArrayList<TransformationUnit> findAnyTransformationUnits(ContentType sourceContentType,
ContentType targetContentType,
boolean createAndPublishCompositeTP)
TransformationsGraph
findAnyTransformationUnits in interface TransformationsGraphsourceContentType - The ContentType of the source DataElement.targetContentType - The ContentType of the target DataElement.createAndPublishCompositeTP - If true then a new composite TransformationProgram is created and published if no available TransformationProgram exists.
TransformationsGraph.findAnyTransformationUnits(org.gcube.datatransformation.datatransformationlibrary.model.ContentType, org.gcube.datatransformation.datatransformationlibrary.model.ContentType, boolean)public ArrayList<ContentType> findAvailableTargetContentTypes(ContentType sourceContentType)
TransformationsGraph
findAvailableTargetContentTypes in interface TransformationsGraphsourceContentType - The ContentType of the source DataElement.
TransformationsGraph.findAvailableTargetContentTypes(org.gcube.datatransformation.datatransformationlibrary.model.ContentType)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||