Commit fd7c2de5 authored by Arnaud Dieumegard's avatar Arnaud Dieumegard

SEIM element name cardinality correction. Regenerated code.

parent 3bf1aadf
......@@ -3,13 +3,14 @@
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2018 IRT AESE (IRT Saint Exupéry).
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v2.0
which accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-2.0"
modelDirectory="/com.irtsaintexupery.pseim/src-gen" editDirectory="/com.irtsaintexupery.pseim.edit/src-gen"
editorDirectory="/com.irtsaintexupery.pseim.editor/src-gen" modelPluginID="com.irtsaintexupery.pseim"
modelName="Pseim" editPluginClass="com.irtsaintexupery.pseim.pseim.provider.PseimEditPlugin"
redirection="" modelName="Pseim" editPluginClass="com.irtsaintexupery.pseim.pseim.provider.PseimEditPlugin"
editorPluginClass="com.irtsaintexupery.pseim.pseim.presentation.PseimEditorPlugin"
rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" codeFormatting="true"
testsDirectory="/com.irtsaintexupery.pseim.tests/src-gen" testSuiteClass="com.irtsaintexupery.pseim.pseim.tests.PseimAllTests"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false"
editPluginID="com.irtsaintexupery.pseim.edit" editorPluginID="com.irtsaintexupery.pseim.editor"
usedGenPackages="seim.genmodel#//seim" operationReflection="true" importOrganizing="true">
usedGenPackages="seim.genmodel#//seim" classNamePattern="" operationReflection="true"
importOrganizing="true">
<foreignModel>pseim.ecore</foreignModel>
<genPackages prefix="Pseim" basePackage="com.irtsaintexupery.pseim" disposableProviderFactory="true"
ecorePackage="pseim.ecore#/">
......
......@@ -29,7 +29,7 @@
<details key="constraints" value="keyNotNull"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="keyNotNull" value="key &lt;> ''"/>
<details key="keyNotNull" value="not(key.oclIsUndefined()) and key &lt;> ''"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
......@@ -69,7 +69,7 @@
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="nameNotEmpty" value="name &lt;> ''"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IdentifiedElement" abstract="true" interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
......
......@@ -58,13 +58,13 @@ public enum LinkType implements Enumerator {
*/
SHIFTC(9, "SHIFTC", "SHIFTC"),
/**
* The '<em><b>FIRST</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>FIRST</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FIRST_VALUE
* @generated
* @ordered
*/
* @see #FIRST_VALUE
* @generated
* @ordered
*/
FIRST(1, "FIRST", "FIRST"),
/**
......@@ -77,67 +77,67 @@ public enum LinkType implements Enumerator {
*/
ROTATE(3, "ROTATE", "ROTATE"),
/**
* The '<em><b>JOINC</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>JOINC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #JOINC_VALUE
* @generated
* @ordered
*/
* @see #JOINC_VALUE
* @generated
* @ordered
*/
JOINC(7, "JOINC", "JOINC"),
/**
* The '<em><b>JOINP</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>JOINP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #JOINP_VALUE
* @generated
* @ordered
*/
* @see #JOINP_VALUE
* @generated
* @ordered
*/
JOINP(8, "JOINP", "JOINP"),
/**
* The '<em><b>FORKC</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>FORKC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FORKC_VALUE
* @generated
* @ordered
*/
* @see #FORKC_VALUE
* @generated
* @ordered
*/
FORKC(5, "FORKC", "FORKC"),
/**
* The '<em><b>FORKP</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>FORKP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FORKP_VALUE
* @generated
* @ordered
*/
* @see #FORKP_VALUE
* @generated
* @ordered
*/
FORKP(6, "FORKP", "FORKP"),
/**
* The '<em><b>SHIFTP</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>SHIFTP</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SHIFTP_VALUE
* @generated
* @ordered
*/
* @see #SHIFTP_VALUE
* @generated
* @ordered
*/
SHIFTP(10, "SHIFTP", "SHIFTP"),
/**
* The '<em><b>FLATTENC</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>FLATTENC</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FLATTENC_VALUE
* @generated
* @ordered
*/
* @see #FLATTENC_VALUE
* @generated
* @ordered
*/
FLATTENC(11, "FLATTENC", "FLATTENC"),
/**
* The '<em><b>LAST</b></em>' literal object.
* <!-- begin-user-doc -->
* The '<em><b>LAST</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #LAST_VALUE
* @generated
* @ordered
*/
* @see #LAST_VALUE
* @generated
* @ordered
*/
LAST(2, "LAST", "LAST");
/**
......
......@@ -45,7 +45,7 @@ public interface NamedElement extends IdentifiedElement {
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see com.irtsaintexupery.pseim.seim.SeimPackage#getNamedElement_Name()
* @model
* @model required="true"
* @generated
*/
String getName();
......
......@@ -30,7 +30,7 @@ package com.irtsaintexupery.pseim.seim;
* @see com.irtsaintexupery.pseim.seim.SeimPackage#getProperty()
* @model interface="true" abstract="true"
* annotation="http://www.eclipse.org/emf/2002/Ecore constraints='keyNotNull'"
* annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot keyNotNull='key &lt;&gt; \'\''"
* annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot keyNotNull='not(key.oclIsUndefined()) and key &lt;&gt; \'\''"
* @generated
*/
public interface Property extends IdentifiedElement {
......
......@@ -693,7 +693,7 @@ public class SeimPackageImpl extends EPackageImpl implements SeimPackage {
initEClass(namedElementEClass, NamedElement.class, "NamedElement", IS_ABSTRACT, IS_INTERFACE,
IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class,
initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 1, 1, NamedElement.class,
!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(identifiedElementEClass, IdentifiedElement.class, "IdentifiedElement", IS_ABSTRACT, IS_INTERFACE,
......@@ -768,7 +768,8 @@ public class SeimPackageImpl extends EPackageImpl implements SeimPackage {
*/
protected void createPivotAnnotations() {
String source = "http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot";
addAnnotation(propertyEClass, source, new String[] { "keyNotNull", "key <> \'\'" });
addAnnotation(propertyEClass, source,
new String[] { "keyNotNull", "not(key.oclIsUndefined()) and key <> \'\'" });
addAnnotation(propertyHolderEClass, source,
new String[] { "uniqueKeys", "properties->forAll(p1, p2 | p1 <> p2 implies p1.key <> p2.key)" });
addAnnotation(namedElementEClass, source, new String[] { "nameNotEmpty", "name <> \'\'" });
......
......@@ -304,7 +304,7 @@ public class SeimValidator extends EObjectValidator {
* <!-- end-user-doc -->
* @generated
*/
protected static final String PROPERTY__KEY_NOT_NULL__EEXPRESSION = "key <> ''";
protected static final String PROPERTY__KEY_NOT_NULL__EEXPRESSION = "not(key.oclIsUndefined()) and key <> ''";
/**
* Validates the keyNotNull constraint of '<em>Property</em>'.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment