SEIM element name cardinality correction. Regenerated code.

This commit is contained in:
Arnaud Dieumegard
2019-01-17 11:00:51 +01:00
parent 3bf1aadfd6
commit fd7c2de530
7 changed files with 59 additions and 57 deletions

View File

@@ -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#/">

View File

@@ -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">

View File

@@ -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");
/**

View File

@@ -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();

View File

@@ -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 {

View File

@@ -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 <> \'\'" });

View File

@@ -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>'.