public class GenModelMetamodelProviderService extends org.eclipse.viatra.query.patternlanguage.emf.scoping.BaseMetamodelProviderService implements IVQGenmodelProvider, org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProviderInstance
Constructor and Description |
---|
GenModelMetamodelProviderService() |
Modifier and Type | Method and Description |
---|---|
org.eclipse.emf.codegen.ecore.genmodel.GenPackage |
findGenPackage(org.eclipse.emf.ecore.EObject ctx,
org.eclipse.emf.ecore.EPackage ePackage)
Tries to find the EMF
GenPackage for a selected EPackage . |
org.eclipse.emf.codegen.ecore.genmodel.GenPackage |
findGenPackage(org.eclipse.emf.ecore.EObject ctx,
java.lang.String packageNsUri)
Tries to find the EMF
GenPackage for a selected EPackage . |
org.eclipse.emf.codegen.ecore.genmodel.GenPackage |
findGenPackage(org.eclipse.emf.ecore.resource.ResourceSet set,
org.eclipse.emf.ecore.EPackage ePackage)
Tries to find the EMF
GenPackage for a selected EPackage . |
org.eclipse.emf.codegen.ecore.genmodel.GenPackage |
findGenPackage(org.eclipse.emf.ecore.resource.ResourceSet set,
java.lang.String packageNsUri)
Tries to find the EMF
GenPackage for a selected EPackage . |
java.util.Collection<org.eclipse.emf.ecore.EPackage> |
getAllMetamodelObjects(org.eclipse.core.resources.IProject project)
Collects all EPackage objects available from a selected project, including the ones from the EPackage Registry.
|
org.eclipse.xtext.scoping.IScope |
getAllMetamodelObjects(org.eclipse.xtext.scoping.IScope delegateScope,
org.eclipse.emf.ecore.EObject ctx) |
ViatraQueryGeneratorModel |
getGeneratorModel(org.eclipse.emf.ecore.EObject pattern)
Gets the generator model for a selected VIATRA query-related context object (e.g.
|
ViatraQueryGeneratorModel |
getGeneratorModel(org.eclipse.core.resources.IProject project) |
ViatraQueryGeneratorModel |
getGeneratorModel(org.eclipse.core.resources.IProject project,
org.eclipse.emf.ecore.resource.ResourceSet set)
Gets the generator model for a selected Viatra Query project.
|
ViatraQueryGeneratorModel |
getGeneratorModel(org.eclipse.emf.ecore.resource.ResourceSet set) |
org.eclipse.core.resources.IFile |
getGeneratorModelFile(org.eclipse.core.resources.IProject project) |
org.eclipse.core.runtime.IPath |
getGeneratorModelPath(org.eclipse.core.resources.IProject project)
Calculates the path of the generator model from a selected project.
|
java.lang.String |
getIdentifier() |
int |
getPriority() |
ViatraQueryGeneratorModel |
initializeGeneratorModel(org.eclipse.core.resources.IProject project,
org.eclipse.emf.ecore.resource.ResourceSet set)
Initializes and returns the VIATRA Query generator model for the selected project.
|
boolean |
isGeneratedCodeAvailable(org.eclipse.emf.ecore.EPackage ePackage,
org.eclipse.emf.ecore.resource.ResourceSet set) |
boolean |
isGeneratorModelDefined(org.eclipse.core.resources.IProject project) |
org.eclipse.emf.ecore.EPackage |
loadEPackage(java.lang.String packageUri,
org.eclipse.emf.ecore.resource.ResourceSet set) |
void |
saveGeneratorModel(org.eclipse.core.resources.IProject project,
ViatraQueryGeneratorModel generatorModel)
Saves the changes to the generator model instance in the selected project.
|
getQualifiedClassName
public java.lang.String getIdentifier()
getIdentifier
in interface org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProviderInstance
public int getPriority()
getPriority
in interface org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProviderInstance
public org.eclipse.xtext.scoping.IScope getAllMetamodelObjects(org.eclipse.xtext.scoping.IScope delegateScope, org.eclipse.emf.ecore.EObject ctx)
getAllMetamodelObjects
in interface org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProvider
getAllMetamodelObjects
in class org.eclipse.viatra.query.patternlanguage.emf.scoping.BaseMetamodelProviderService
public java.util.Collection<org.eclipse.emf.ecore.EPackage> getAllMetamodelObjects(org.eclipse.core.resources.IProject project) throws org.eclipse.core.runtime.CoreException
IVQGenmodelProvider
getAllMetamodelObjects
in interface IVQGenmodelProvider
org.eclipse.core.runtime.CoreException
public org.eclipse.emf.ecore.EPackage loadEPackage(java.lang.String packageUri, org.eclipse.emf.ecore.resource.ResourceSet set)
loadEPackage
in interface org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProvider
public boolean isGeneratedCodeAvailable(org.eclipse.emf.ecore.EPackage ePackage, org.eclipse.emf.ecore.resource.ResourceSet set)
isGeneratedCodeAvailable
in interface org.eclipse.viatra.query.patternlanguage.emf.scoping.IMetamodelProvider
isGeneratedCodeAvailable
in class org.eclipse.viatra.query.patternlanguage.emf.scoping.BaseMetamodelProviderService
public ViatraQueryGeneratorModel getGeneratorModel(org.eclipse.emf.ecore.EObject pattern)
IVQGenmodelProvider
Pattern
). If the project
of the pattern has no generator model specified, this method returns an empty generator model. The genmodel will
be placed into the ResourceSet
of the Pattern object.getGeneratorModel
in interface IVQGenmodelProvider
public ViatraQueryGeneratorModel getGeneratorModel(org.eclipse.core.resources.IProject project)
public ViatraQueryGeneratorModel getGeneratorModel(org.eclipse.emf.ecore.resource.ResourceSet set)
public ViatraQueryGeneratorModel getGeneratorModel(org.eclipse.core.resources.IProject project, org.eclipse.emf.ecore.resource.ResourceSet set)
IVQGenmodelProvider
getGeneratorModel
in interface IVQGenmodelProvider
public void saveGeneratorModel(org.eclipse.core.resources.IProject project, ViatraQueryGeneratorModel generatorModel) throws java.io.IOException
IVQGenmodelProvider
IVQGenmodelProvider.getGeneratorModel(EObject)
or the
IVQGenmodelProvider.getGeneratorModel(IProject, ResourceSet)
methods.saveGeneratorModel
in interface IVQGenmodelProvider
java.io.IOException
public org.eclipse.emf.codegen.ecore.genmodel.GenPackage findGenPackage(org.eclipse.emf.ecore.EObject ctx, org.eclipse.emf.ecore.EPackage ePackage)
IVQGenmodelProvider
GenPackage
for a selected EPackage
. The context object is used for
determining the actual project.findGenPackage
in interface IVQGenmodelProvider
GenPackage
for the selected EPackage
public org.eclipse.emf.codegen.ecore.genmodel.GenPackage findGenPackage(org.eclipse.emf.ecore.EObject ctx, java.lang.String packageNsUri)
IVQGenmodelProvider
GenPackage
for a selected EPackage
. The context object is used for
determining the actual project.findGenPackage
in interface IVQGenmodelProvider
GenPackage
for the selected EPackage
public org.eclipse.emf.codegen.ecore.genmodel.GenPackage findGenPackage(org.eclipse.emf.ecore.resource.ResourceSet set, org.eclipse.emf.ecore.EPackage ePackage)
IVQGenmodelProvider
GenPackage
for a selected EPackage
. The resource set is expected to be the
one Xtext assigns for a Java project.findGenPackage
in interface IVQGenmodelProvider
GenPackage
for the selected EPackage
public org.eclipse.emf.codegen.ecore.genmodel.GenPackage findGenPackage(org.eclipse.emf.ecore.resource.ResourceSet set, java.lang.String packageNsUri)
IVQGenmodelProvider
GenPackage
for a selected EPackage
. The resource set is expected to be the
one Xtext assigns for a Java project.findGenPackage
in interface IVQGenmodelProvider
GenPackage
for the selected EPackage
public boolean isGeneratorModelDefined(org.eclipse.core.resources.IProject project)
public org.eclipse.core.resources.IFile getGeneratorModelFile(org.eclipse.core.resources.IProject project)
public org.eclipse.core.runtime.IPath getGeneratorModelPath(org.eclipse.core.resources.IProject project)
IVQGenmodelProvider
getGeneratorModelPath
in interface IVQGenmodelProvider
public ViatraQueryGeneratorModel initializeGeneratorModel(org.eclipse.core.resources.IProject project, org.eclipse.emf.ecore.resource.ResourceSet set)