diff options
| author | cbrun | 2015-03-20 14:21:17 +0000 |
|---|---|---|
| committer | Pierre-Charles David | 2015-08-25 09:52:58 +0000 |
| commit | 33dd0e9a960ec1f73411ee7059c3beb8806fd328 (patch) | |
| tree | fe6d00db809058dcfdf7c8bc10ea907ea8cd643c | |
| parent | 7decff7276c865bf5d53401704f4380df9bcfc2b (diff) | |
| download | org.eclipse.sirius-33dd0e9a960ec1f73411ee7059c3beb8806fd328.tar.gz org.eclipse.sirius-33dd0e9a960ec1f73411ee7059c3beb8806fd328.tar.xz org.eclipse.sirius-33dd0e9a960ec1f73411ee7059c3beb8806fd328.zip | |
[474334] Systematically declare Dialect Metamodels as available
Make sure all the dialects metamodels are always available to
expressions.
This avoids the Acceleo compilation cache to be polluted with versions
of the service modules with compilation errors when they are compiled in
some context A, and then picked up in another context B, where they
would be fine but are not recompiled in the new context.
Bug: 474334
Change-Id: I6d697637d489e23854b60b41d74e0f77c2d02c1c
See-also: 461498
Signed-off-by: Cedric Brun <cedric.brun@obeo.fr>
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
14 files changed, 287 insertions, 0 deletions
diff --git a/plugins/org.eclipse.sirius.diagram.sequence/plugin.xml b/plugins/org.eclipse.sirius.diagram.sequence/plugin.xml index afedb14633..3db8038714 100644 --- a/plugins/org.eclipse.sirius.diagram.sequence/plugin.xml +++ b/plugins/org.eclipse.sirius.diagram.sequence/plugin.xml @@ -61,4 +61,10 @@ class="org.eclipse.sirius.diagram.sequence.tool.internal.action.repair.SequenceDiagramRepairParticipant"> </repairParticipant> </extension> + <extension + point="org.eclipse.sirius.mmdescriptor"> + <descriptorprovider + class="org.eclipse.sirius.diagram.sequence.business.internal.metamodel.SequenceDiagramMetamodelsProvider"> + </descriptorprovider> + </extension> </plugin> diff --git a/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/metamodel/SequenceDiagramMetamodelsProvider.java b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/metamodel/SequenceDiagramMetamodelsProvider.java new file mode 100644 index 0000000000..fb54ebd849 --- /dev/null +++ b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/metamodel/SequenceDiagramMetamodelsProvider.java @@ -0,0 +1,43 @@ +/** + * Copyright (c) 2015 Obeo + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Obeo - initial API and implementation + * + */ +package org.eclipse.sirius.diagram.sequence.business.internal.metamodel; + +import java.util.Collection; +import java.util.Set; + +import org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider; +import org.eclipse.sirius.ecore.extender.business.api.accessor.EcoreMetamodelDescriptor; +import org.eclipse.sirius.ecore.extender.business.api.accessor.MetamodelDescriptor; +import org.eclipse.sirius.viewpoint.description.Viewpoint; + +import com.google.common.collect.Sets; + +/** + * Provides the descriptors for the sequence diagram metamodels of Sirius. + * + * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a> + * + */ +public class SequenceDiagramMetamodelsProvider implements MetamodelDescriptorProvider { + + @Override + public Collection<MetamodelDescriptor> provides(Viewpoint vp) { + Set<MetamodelDescriptor> result = Sets.newLinkedHashSet(); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.sequence.SequencePackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.sequence.description.DescriptionPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.sequence.description.tool.ToolPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.sequence.ordering.OrderingPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.sequence.template.TemplatePackage.eINSTANCE)); + return result; + } + +} diff --git a/plugins/org.eclipse.sirius.diagram/plugin.xml b/plugins/org.eclipse.sirius.diagram/plugin.xml index afa33335d3..9f45624137 100644 --- a/plugins/org.eclipse.sirius.diagram/plugin.xml +++ b/plugins/org.eclipse.sirius.diagram/plugin.xml @@ -530,4 +530,10 @@ <dialect class="org.eclipse.sirius.diagram.business.internal.dialect.DiagramDialect"></dialect> </extension> + <extension + point="org.eclipse.sirius.mmdescriptor"> + <descriptorprovider + class="org.eclipse.sirius.diagram.business.internal.dialect.DiagramMetamodelsProvider"> + </descriptorprovider> + </extension> </plugin> diff --git a/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/DiagramMetamodelsProvider.java b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/DiagramMetamodelsProvider.java new file mode 100644 index 0000000000..cb4d2eb094 --- /dev/null +++ b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/DiagramMetamodelsProvider.java @@ -0,0 +1,44 @@ +/** + * Copyright (c) 2015 Obeo + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Obeo - initial API and implementation + * + */ +package org.eclipse.sirius.diagram.business.internal.dialect; + +import java.util.Collection; +import java.util.Set; + +import org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider; +import org.eclipse.sirius.ecore.extender.business.api.accessor.EcoreMetamodelDescriptor; +import org.eclipse.sirius.ecore.extender.business.api.accessor.MetamodelDescriptor; +import org.eclipse.sirius.viewpoint.description.Viewpoint; + +import com.google.common.collect.Sets; + +/** + * Provides the descriptors for the diagram metamodels of Sirius. + * + * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a> + * + */ +public class DiagramMetamodelsProvider implements MetamodelDescriptorProvider { + + @Override + public Collection<MetamodelDescriptor> provides(Viewpoint vp) { + Set<MetamodelDescriptor> result = Sets.newLinkedHashSet(); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.DiagramPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.description.DescriptionPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.description.style.StylePackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.description.tool.ToolPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.description.filter.FilterPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.diagram.description.concern.ConcernPackage.eINSTANCE)); + return result; + } + +} diff --git a/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/description/DiagramInterpretedExpressionQuery.java b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/description/DiagramInterpretedExpressionQuery.java index 256ab990b2..1958722b1d 100644 --- a/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/description/DiagramInterpretedExpressionQuery.java +++ b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/dialect/description/DiagramInterpretedExpressionQuery.java @@ -14,15 +14,21 @@ import java.util.Collection; import java.util.Map; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.sirius.business.api.dialect.description.AbstractInterpretedExpressionQuery; import org.eclipse.sirius.business.api.dialect.description.DefaultInterpretedExpressionTargetSwitch; import org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionQuery; import org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionTargetSwitch; +import org.eclipse.sirius.diagram.DiagramPackage; import org.eclipse.sirius.diagram.business.api.diagramtype.DiagramTypeDescriptorRegistry; import org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramTypeDescriptor; +import org.eclipse.sirius.diagram.description.DescriptionPackage; import org.eclipse.sirius.diagram.description.DiagramExtensionDescription; import org.eclipse.sirius.diagram.description.EdgeMappingImport; +import org.eclipse.sirius.diagram.description.concern.ConcernPackage; +import org.eclipse.sirius.diagram.description.filter.FilterPackage; +import org.eclipse.sirius.diagram.description.style.StylePackage; import org.eclipse.sirius.diagram.description.tool.DirectEditLabel; import org.eclipse.sirius.diagram.description.tool.EdgeCreationDescription; import org.eclipse.sirius.ext.base.Option; @@ -58,6 +64,18 @@ public class DiagramInterpretedExpressionQuery extends AbstractInterpretedExpres super(target, feature); } + @Override + public Collection<EPackage> getPackagesToImport() { + Collection<EPackage> superResult = super.getPackagesToImport(); + superResult.add(DiagramPackage.eINSTANCE); + superResult.add(DescriptionPackage.eINSTANCE); + superResult.add(StylePackage.eINSTANCE); + superResult.add(org.eclipse.sirius.diagram.description.tool.ToolPackage.eINSTANCE); + superResult.add(FilterPackage.eINSTANCE); + superResult.add(ConcernPackage.eINSTANCE); + return superResult; + } + /** * * {@inheritDoc} diff --git a/plugins/org.eclipse.sirius.table/plugin.xml b/plugins/org.eclipse.sirius.table/plugin.xml index 8445cfd9b4..87b136a553 100644 --- a/plugins/org.eclipse.sirius.table/plugin.xml +++ b/plugins/org.eclipse.sirius.table/plugin.xml @@ -33,5 +33,11 @@ class="org.eclipse.sirius.table.business.internal.dialect.TableDialect"> </dialect> </extension> + <extension + point="org.eclipse.sirius.mmdescriptor"> + <descriptorprovider + class="org.eclipse.sirius.table.business.internal.dialect.TableMetamodelsProvider"> + </descriptorprovider> + </extension> </plugin> diff --git a/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/TableMetamodelsProvider.java b/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/TableMetamodelsProvider.java new file mode 100644 index 0000000000..6c7a33e5d9 --- /dev/null +++ b/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/TableMetamodelsProvider.java @@ -0,0 +1,40 @@ +/** + * Copyright (c) 2015 Obeo + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Obeo - initial API and implementation + * + */ +package org.eclipse.sirius.table.business.internal.dialect; + +import java.util.Collection; +import java.util.Set; + +import org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider; +import org.eclipse.sirius.ecore.extender.business.api.accessor.EcoreMetamodelDescriptor; +import org.eclipse.sirius.ecore.extender.business.api.accessor.MetamodelDescriptor; +import org.eclipse.sirius.viewpoint.description.Viewpoint; + +import com.google.common.collect.Sets; + +/** + * Provides the descriptors for the table metamodels of Sirius. + * + * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a> + * + */ +public class TableMetamodelsProvider implements MetamodelDescriptorProvider { + + @Override + public Collection<MetamodelDescriptor> provides(Viewpoint vp) { + Set<MetamodelDescriptor> result = Sets.newLinkedHashSet(); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.table.metamodel.table.TablePackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.table.metamodel.table.description.DescriptionPackage.eINSTANCE)); + return result; + } + +} diff --git a/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/description/TableInterpretedExpressionQuery.java b/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/description/TableInterpretedExpressionQuery.java index 1eb19d222c..4347c6eb14 100644 --- a/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/description/TableInterpretedExpressionQuery.java +++ b/plugins/org.eclipse.sirius.table/src/org/eclipse/sirius/table/business/internal/dialect/description/TableInterpretedExpressionQuery.java @@ -14,6 +14,7 @@ import java.util.Collection; import java.util.Map; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.sirius.business.api.dialect.description.AbstractInterpretedExpressionQuery; import org.eclipse.sirius.business.api.dialect.description.DefaultInterpretedExpressionTargetSwitch; @@ -21,6 +22,7 @@ import org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressio import org.eclipse.sirius.business.api.query.EObjectQuery; import org.eclipse.sirius.ext.base.Option; import org.eclipse.sirius.ext.base.Options; +import org.eclipse.sirius.table.metamodel.table.TablePackage; import org.eclipse.sirius.table.metamodel.table.description.CreateCellTool; import org.eclipse.sirius.table.metamodel.table.description.DescriptionPackage; import org.eclipse.sirius.table.metamodel.table.description.LabelEditTool; @@ -53,6 +55,14 @@ public class TableInterpretedExpressionQuery extends AbstractInterpretedExpressi } @Override + public Collection<EPackage> getPackagesToImport() { + Collection<EPackage> superResult = super.getPackagesToImport(); + superResult.add(TablePackage.eINSTANCE); + superResult.add(DescriptionPackage.eINSTANCE); + return superResult; + } + + @Override protected void initializeTargetSwitch() { targetSwitch = new TableGlobalInterpretedTargetSwitch(); } diff --git a/plugins/org.eclipse.sirius.tree/plugin.xml b/plugins/org.eclipse.sirius.tree/plugin.xml index 27966e9048..b225726e48 100644 --- a/plugins/org.eclipse.sirius.tree/plugin.xml +++ b/plugins/org.eclipse.sirius.tree/plugin.xml @@ -32,5 +32,11 @@ class="org.eclipse.sirius.tree.business.internal.dialect.TreeDialect"> </dialect> </extension> + <extension + point="org.eclipse.sirius.mmdescriptor"> + <descriptorprovider + class="org.eclipse.sirius.tree.business.internal.dialect.TreeMetamodelsProvider"> + </descriptorprovider> + </extension> </plugin> diff --git a/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/TreeMetamodelsProvider.java b/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/TreeMetamodelsProvider.java new file mode 100644 index 0000000000..1a77432fd8 --- /dev/null +++ b/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/TreeMetamodelsProvider.java @@ -0,0 +1,40 @@ +/** + * Copyright (c) 2015 Obeo + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Obeo - initial API and implementation + * + */ +package org.eclipse.sirius.tree.business.internal.dialect; + +import java.util.Collection; +import java.util.Set; + +import org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider; +import org.eclipse.sirius.ecore.extender.business.api.accessor.EcoreMetamodelDescriptor; +import org.eclipse.sirius.ecore.extender.business.api.accessor.MetamodelDescriptor; +import org.eclipse.sirius.viewpoint.description.Viewpoint; + +import com.google.common.collect.Sets; + +/** + * Provides the descriptors for the tree metamodels of Sirius. + * + * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a> + * + */ +public class TreeMetamodelsProvider implements MetamodelDescriptorProvider { + + @Override + public Collection<MetamodelDescriptor> provides(Viewpoint vp) { + Set<MetamodelDescriptor> result = Sets.newLinkedHashSet(); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.tree.TreePackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.tree.description.DescriptionPackage.eINSTANCE)); + return result; + } + +} diff --git a/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/description/TreeInterpretedExpressionQuery.java b/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/description/TreeInterpretedExpressionQuery.java index 6381391c5a..ba821a7ad2 100644 --- a/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/description/TreeInterpretedExpressionQuery.java +++ b/plugins/org.eclipse.sirius.tree/src/org/eclipse/sirius/tree/business/internal/dialect/description/TreeInterpretedExpressionQuery.java @@ -14,7 +14,9 @@ import java.util.Collection; import java.util.Map; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.emf.edit.tree.TreePackage; import org.eclipse.sirius.business.api.dialect.description.AbstractInterpretedExpressionQuery; import org.eclipse.sirius.business.api.dialect.description.DefaultInterpretedExpressionTargetSwitch; import org.eclipse.sirius.business.api.dialect.description.IInterpretedExpressionTargetSwitch; @@ -60,6 +62,14 @@ public class TreeInterpretedExpressionQuery extends AbstractInterpretedExpressio protected void initializeTargetSwitch() { targetSwitch = new TreeGlobalInterpretedTargetSwitch(); } + + @Override + public Collection<EPackage> getPackagesToImport() { + Collection<EPackage> superResult = super.getPackagesToImport(); + superResult.add(TreePackage.eINSTANCE); + superResult.add(DescriptionPackage.eINSTANCE); + return superResult; + } /** * {@inheritDoc} diff --git a/plugins/org.eclipse.sirius/plugin.xml b/plugins/org.eclipse.sirius/plugin.xml index a742ee64dd..c9708f758c 100644 --- a/plugins/org.eclipse.sirius/plugin.xml +++ b/plugins/org.eclipse.sirius/plugin.xml @@ -336,5 +336,11 @@ class="org.eclipse.sirius.business.internal.resource.parser.AirDResourceFactory"> </parser> </extension> + <extension + point="org.eclipse.sirius.mmdescriptor"> + <descriptorprovider + class="org.eclipse.sirius.business.internal.dialect.ViewpointMetamodelsProvider"> + </descriptorprovider> + </extension> </plugin> diff --git a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/dialect/description/AbstractInterpretedExpressionQuery.java b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/dialect/description/AbstractInterpretedExpressionQuery.java index 3f0aaa5002..26b03f5cbd 100644 --- a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/dialect/description/AbstractInterpretedExpressionQuery.java +++ b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/api/dialect/description/AbstractInterpretedExpressionQuery.java @@ -25,6 +25,8 @@ import org.eclipse.sirius.business.api.query.EObjectQuery; import org.eclipse.sirius.common.tools.api.util.StringUtil; import org.eclipse.sirius.ext.base.Option; import org.eclipse.sirius.ext.emf.AllContents; +import org.eclipse.sirius.viewpoint.ViewpointPackage; +import org.eclipse.sirius.viewpoint.description.DescriptionPackage; import org.eclipse.sirius.viewpoint.description.JavaExtension; import org.eclipse.sirius.viewpoint.description.RepresentationDescription; import org.eclipse.sirius.viewpoint.description.Viewpoint; @@ -35,6 +37,7 @@ import org.eclipse.sirius.viewpoint.description.tool.EditMaskVariables; import org.eclipse.sirius.viewpoint.description.tool.For; import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; import org.eclipse.sirius.viewpoint.description.tool.VariableContainer; +import org.eclipse.sirius.viewpoint.description.validation.ValidationPackage; import com.google.common.base.Preconditions; import com.google.common.collect.Iterables; @@ -193,6 +196,10 @@ public abstract class AbstractInterpretedExpressionQuery implements IInterpreted } } packagesToImport.add(EcorePackage.eINSTANCE); + packagesToImport.add(ViewpointPackage.eINSTANCE); + packagesToImport.add(DescriptionPackage.eINSTANCE); + packagesToImport.add(ToolPackage.eINSTANCE); + packagesToImport.add(ValidationPackage.eINSTANCE); } return packagesToImport; } diff --git a/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/dialect/ViewpointMetamodelsProvider.java b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/dialect/ViewpointMetamodelsProvider.java new file mode 100644 index 0000000000..2aa601c4fa --- /dev/null +++ b/plugins/org.eclipse.sirius/src/org/eclipse/sirius/business/internal/dialect/ViewpointMetamodelsProvider.java @@ -0,0 +1,45 @@ +/** + * Copyright (c) 2015 Obeo + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Obeo - initial API and implementation + * + */ +package org.eclipse.sirius.business.internal.dialect; + +import java.util.Collection; +import java.util.Set; + +import org.eclipse.sirius.business.api.extender.MetamodelDescriptorProvider; +import org.eclipse.sirius.ecore.extender.business.api.accessor.EcoreMetamodelDescriptor; +import org.eclipse.sirius.ecore.extender.business.api.accessor.MetamodelDescriptor; +import org.eclipse.sirius.viewpoint.description.Viewpoint; + +import com.google.common.collect.Sets; + +/** + * Provides the descriptors for the core metamodels of Sirius. + * + * @author <a href="mailto:cedric.brun@obeo.fr">Cedric Brun</a> + * + */ +public class ViewpointMetamodelsProvider implements MetamodelDescriptorProvider { + + @Override + public Collection<MetamodelDescriptor> provides(Viewpoint vp) { + Set<MetamodelDescriptor> result = Sets.newLinkedHashSet(); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.ViewpointPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.description.DescriptionPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.description.style.StylePackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.description.tool.ToolPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.description.validation.ValidationPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.viewpoint.description.audit.AuditPackage.eINSTANCE)); + result.add(new EcoreMetamodelDescriptor(org.eclipse.sirius.description.contribution.ContributionPackage.eINSTANCE)); + return result; + } + +} |
