org.eclipse.etrice.generator.base
Class DependencyManager

java.lang.Object
  extended by org.eclipse.etrice.generator.base.DependencyManager

public class DependencyManager
extends java.lang.Object

a class that computes dependencies of ROOM models. All models contained in the generator model are looked at. Then the paths of the associated eResource are searched upward for a marker file (in the case of an Eclipse project this would be .project).

If this path differs from the supplied main path then the model is mapped as referenced model to a relative path from the main path to the referenced project.

Author:
Henrik Rentz-Reichert

Constructor Summary
DependencyManager()
           
 
Method Summary
 void computeDependencies(java.util.List<RoomModel> models, URI main, java.lang.String projectMarker)
          see the description of the DependencyManager class
 void computeProjectDependencies(java.util.List<RoomModel> models, URI main)
          calls computeDependencies(List, URI, String) with '.project' as project marker file.
 java.util.Collection<java.lang.String> getReferencedModelRelativePaths()
           
 java.util.Set<java.lang.String> getReferencedModels()
           
 java.util.Map<java.lang.String,java.lang.String> getReferencedModelToRelPath()
           
 java.lang.String getRelativePath(java.lang.String refmodel)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DependencyManager

public DependencyManager()
Method Detail

computeProjectDependencies

public void computeProjectDependencies(java.util.List<RoomModel> models,
                                       URI main)
calls computeDependencies(List, URI, String) with '.project' as project marker file.

Parameters:
models - a list of all ROOM models
main -

computeDependencies

public void computeDependencies(java.util.List<RoomModel> models,
                                URI main,
                                java.lang.String projectMarker)
see the description of the DependencyManager class

Parameters:
models - a list of all ROOM models
main -
projectMarker -

getReferencedModelToRelPath

public java.util.Map<java.lang.String,java.lang.String> getReferencedModelToRelPath()
Returns:
the map of referenced models to relative paths

getReferencedModels

public java.util.Set<java.lang.String> getReferencedModels()
Returns:
all referenced model names

getReferencedModelRelativePaths

public java.util.Collection<java.lang.String> getReferencedModelRelativePaths()
Returns:
all relative paths of referenced models

getRelativePath

public java.lang.String getRelativePath(java.lang.String refmodel)
Parameters:
refmodel - the name of a referenced model
Returns:
the relative path of the referenced model' project