org.eclipse.emf.importer
Class ModelImporter

java.lang.Object
  extended byorg.eclipse.emf.importer.ModelImporter
Direct Known Subclasses:
EcoreImporter, JavaImporter, RoseImporter

public abstract class ModelImporter
extends java.lang.Object

Since:
2.1.0

Nested Class Summary
static class ModelImporter.EPackageInfo
           
static class ModelImporter.EPackageList
           
static class ModelImporter.GenPackageList
           
protected static class ModelImporter.ShellFinder
           
 
Field Summary
protected  java.util.List ePackages
           
protected  java.util.Map ePackageToInfoMap
           
protected  java.util.List externalGenModelList
           
protected  ResourceSet externalGenModelResourceSet
           
protected  java.util.List fileExtensions
           
protected  GenModel genModel
           
protected  IPath genModelContainerPath
           
protected  java.lang.String genModelFileName
           
protected  IPath genModelPath
           
protected  IPath genModelProjectLocation
           
protected  java.lang.String modelLocation
           
protected  java.util.List modelLocationURIs
           
protected  java.lang.String modelPluginDirectory
           
protected  java.lang.String modelPluginID
           
protected  GenModel originalGenModel
           
protected  IPath originalGenModelPath
           
protected  java.util.List referencedGenPackages
           
protected  boolean usePlatformURI
           
protected  IWorkspaceRoot workspaceRoot
           
 
Constructor Summary
ModelImporter()
           
 
Method Summary
 boolean addGenModelToResource(boolean replace)
           
 void addToResource(EPackage ePackage, ResourceSet resourceSet)
           
protected  void adjustEPackage(IProgressMonitor progressMonitor, EPackage ePackage)
           
 void adjustEPackages(IProgressMonitor progressMonitor)
           
protected  void adjustGenModel(IProgressMonitor progressMonitor)
           
protected  void adjustGenPackageDuringTraverse(GenPackage genPackage)
           
 IStatus checkEcoreModelFileName(java.lang.String fileName, java.lang.String packageName)
           
 IStatus checkGenModelFileName()
           
 void clearEPackagesCollections()
           
 java.lang.String computeDefaultGenModelFileName()
           
 IStatus computeEPackages(IProgressMonitor progressMonitor)
           
protected  java.util.List computeEPackagesBeingReloaded()
           
protected  java.util.List computeEPackagesToGenerate()
           
 IPath computeGenModelContainerPath(IPath projectPath)
           
protected  java.util.List computeResourcesToBeSaved()
           
 URI createFileURI(java.lang.String pathName)
           
protected  void createProject(IProgressMonitor progressMonitor, IProject project, java.util.Collection referencedGenModels)
           
 ResourceSet createResourceSet()
           
 void defineOriginalGenModelPath(IPath path)
           
 void dispose()
           
protected  IStatus doComputeEPackages(IProgressMonitor progressMonitor)
           
 java.util.List filterReferencedEPackages(java.util.Collection ePackages)
           
protected  java.util.Map getEcoreSaveOptions()
           
 ModelImporter.EPackageInfo getEPackageInfo(EPackage ePackage)
           
 java.util.List getEPackages()
           
protected  java.util.Map getEPackageToInfoMap()
           
 java.util.List getExternalGenModels()
           
 java.util.List getFileExtensions()
           
 URI getFirstModelLocationURI(boolean resolve)
           
 GenModel getGenModel()
           
 IPath getGenModelContainerPath()
           
protected  IPath getGenModelDefaultFolderPath()
           
 java.lang.String getGenModelFileName()
           
 IPath getGenModelPath()
           
 IPath getGenModelProjectLocation()
           
 ResourceSet getGenModelResourceSet()
           
protected  java.util.Map getGenmodelSaveOptions()
           
protected  GenPackage getGenPackage(EPackage ePackage)
           
abstract  java.lang.String getID()
           
 java.lang.String getModelLocation()
           
 java.util.List getModelLocationURIs()
           
 java.lang.String getModelPluginDirectory()
           
 java.lang.String getModelPluginID()
           
 java.lang.String getModelProjectName()
           
protected  GenModel getOriginalGenModel()
           
 IPath getOriginalGenModelPath()
           
 java.util.List getReferencedGenPackages()
           
 EPackage getReferredEPackage(GenPackage genPackage)
           
protected  IWorkspaceRoot getWorkspaceRoot()
           
protected  void loadOriginalGenModel(URI genModelURI)
           
protected  URI makeAbsolute(URI uri, URI relativeTo)
           
 void makeEcoreFileNamesUnique()
          Changes the existing EPackage Infos so that no duplicated names are used.
protected  URI makeRelative(URI uri, URI relativeTo)
           
 void prepareGenModelAndEPackages(IProgressMonitor progressMonitor)
           
protected  void presetEPackagesToGenerate()
           
 void saveGenModelAndEPackages(IProgressMonitor progressMonitor)
           
 void setGenModelContainerPath(IPath path)
           
 void setGenModelFileName(java.lang.String name)
           
 void setGenModelProjectLocation(IPath genModelProjectLocation)
           
 void setModelFile(IFile file)
           
 void setModelLocation(java.lang.String location)
           
 void setModelPluginDirectory(java.lang.String modelPluginDirectory)
           
 void setModelPluginID(java.lang.String modelPluginID)
           
 void setUsePlatformURI(boolean usePlatformURI)
           
 void traverseGenPackages(java.util.List genPackages)
           
 boolean usePlatformURI()
           
protected  java.lang.String validateFiles(java.util.List resources)
          Invokes the Platform validateEdit method for all the read-only files referred by a given resource in the list.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fileExtensions

protected java.util.List fileExtensions

originalGenModelPath

protected IPath originalGenModelPath

originalGenModel

protected GenModel originalGenModel

genModelProjectLocation

protected IPath genModelProjectLocation

genModelContainerPath

protected IPath genModelContainerPath

genModelFileName

protected java.lang.String genModelFileName

genModelPath

protected IPath genModelPath

genModel

protected GenModel genModel

ePackages

protected java.util.List ePackages

ePackageToInfoMap

protected java.util.Map ePackageToInfoMap

referencedGenPackages

protected java.util.List referencedGenPackages

modelLocationURIs

protected java.util.List modelLocationURIs

modelLocation

protected java.lang.String modelLocation

modelPluginID

protected java.lang.String modelPluginID

modelPluginDirectory

protected java.lang.String modelPluginDirectory

usePlatformURI

protected boolean usePlatformURI

workspaceRoot

protected IWorkspaceRoot workspaceRoot

externalGenModelResourceSet

protected ResourceSet externalGenModelResourceSet

externalGenModelList

protected java.util.List externalGenModelList
Constructor Detail

ModelImporter

public ModelImporter()
Method Detail

dispose

public void dispose()

getID

public abstract java.lang.String getID()

getFileExtensions

public java.util.List getFileExtensions()

usePlatformURI

public boolean usePlatformURI()

setUsePlatformURI

public void setUsePlatformURI(boolean usePlatformURI)

defineOriginalGenModelPath

public void defineOriginalGenModelPath(IPath path)

getOriginalGenModelPath

public IPath getOriginalGenModelPath()

computeEPackagesBeingReloaded

protected java.util.List computeEPackagesBeingReloaded()

setGenModelFileName

public void setGenModelFileName(java.lang.String name)

getGenModelFileName

public java.lang.String getGenModelFileName()

computeDefaultGenModelFileName

public java.lang.String computeDefaultGenModelFileName()

checkGenModelFileName

public IStatus checkGenModelFileName()

checkEcoreModelFileName

public IStatus checkEcoreModelFileName(java.lang.String fileName,
                                       java.lang.String packageName)

setGenModelProjectLocation

public void setGenModelProjectLocation(IPath genModelProjectLocation)

getGenModelProjectLocation

public IPath getGenModelProjectLocation()

setGenModelContainerPath

public void setGenModelContainerPath(IPath path)

getGenModelContainerPath

public IPath getGenModelContainerPath()

computeGenModelContainerPath

public IPath computeGenModelContainerPath(IPath projectPath)

getGenModelDefaultFolderPath

protected IPath getGenModelDefaultFolderPath()

getGenModelPath

public IPath getGenModelPath()

getGenModel

public GenModel getGenModel()

addGenModelToResource

public boolean addGenModelToResource(boolean replace)

getGenModelResourceSet

public ResourceSet getGenModelResourceSet()

getOriginalGenModel

protected GenModel getOriginalGenModel()

getEPackages

public java.util.List getEPackages()

getEPackageToInfoMap

protected java.util.Map getEPackageToInfoMap()

getEPackageInfo

public ModelImporter.EPackageInfo getEPackageInfo(EPackage ePackage)

getReferencedGenPackages

public java.util.List getReferencedGenPackages()

getGenPackage

protected GenPackage getGenPackage(EPackage ePackage)

setModelLocation

public void setModelLocation(java.lang.String location)

getModelLocation

public java.lang.String getModelLocation()

getModelLocationURIs

public java.util.List getModelLocationURIs()

getFirstModelLocationURI

public URI getFirstModelLocationURI(boolean resolve)

setModelFile

public void setModelFile(IFile file)

getReferredEPackage

public EPackage getReferredEPackage(GenPackage genPackage)

filterReferencedEPackages

public java.util.List filterReferencedEPackages(java.util.Collection ePackages)

getExternalGenModels

public java.util.List getExternalGenModels()

createResourceSet

public ResourceSet createResourceSet()

loadOriginalGenModel

protected void loadOriginalGenModel(URI genModelURI)

computeEPackages

public IStatus computeEPackages(IProgressMonitor progressMonitor)
                         throws java.lang.Exception
Throws:
java.lang.Exception

presetEPackagesToGenerate

protected void presetEPackagesToGenerate()

doComputeEPackages

protected IStatus doComputeEPackages(IProgressMonitor progressMonitor)
                              throws java.lang.Exception
Throws:
java.lang.Exception

clearEPackagesCollections

public void clearEPackagesCollections()

adjustEPackages

public void adjustEPackages(IProgressMonitor progressMonitor)

adjustEPackage

protected void adjustEPackage(IProgressMonitor progressMonitor,
                              EPackage ePackage)

getWorkspaceRoot

protected IWorkspaceRoot getWorkspaceRoot()

prepareGenModelAndEPackages

public void prepareGenModelAndEPackages(IProgressMonitor progressMonitor)

addToResource

public void addToResource(EPackage ePackage,
                          ResourceSet resourceSet)

saveGenModelAndEPackages

public void saveGenModelAndEPackages(IProgressMonitor progressMonitor)
                              throws java.lang.Exception
Throws:
java.lang.Exception

computeResourcesToBeSaved

protected java.util.List computeResourcesToBeSaved()

validateFiles

protected java.lang.String validateFiles(java.util.List resources)
Invokes the Platform validateEdit method for all the read-only files referred by a given resource in the list. Returns null if the resources can be saved or a comma separated list of the files that are read-only.

Parameters:
resources -
Returns:
String

createProject

protected void createProject(IProgressMonitor progressMonitor,
                             IProject project,
                             java.util.Collection referencedGenModels)

adjustGenModel

protected void adjustGenModel(IProgressMonitor progressMonitor)

computeEPackagesToGenerate

protected java.util.List computeEPackagesToGenerate()

traverseGenPackages

public void traverseGenPackages(java.util.List genPackages)

adjustGenPackageDuringTraverse

protected void adjustGenPackageDuringTraverse(GenPackage genPackage)

makeRelative

protected URI makeRelative(URI uri,
                           URI relativeTo)

makeAbsolute

protected URI makeAbsolute(URI uri,
                           URI relativeTo)

createFileURI

public URI createFileURI(java.lang.String pathName)

getModelPluginID

public java.lang.String getModelPluginID()

setModelPluginID

public void setModelPluginID(java.lang.String modelPluginID)

getModelPluginDirectory

public java.lang.String getModelPluginDirectory()

setModelPluginDirectory

public void setModelPluginDirectory(java.lang.String modelPluginDirectory)

getModelProjectName

public java.lang.String getModelProjectName()

makeEcoreFileNamesUnique

public void makeEcoreFileNamesUnique()
Changes the existing EPackage Infos so that no duplicated names are used.


getEcoreSaveOptions

protected java.util.Map getEcoreSaveOptions()

getGenmodelSaveOptions

protected java.util.Map getGenmodelSaveOptions()

Copyright 2001-2004 IBM Corporation and others.
All Rights Reserved.