Skip to content

Commit ed834e4

Browse files
committed
[SAFRAN-1224] Database - Entity - Prevent external tables and structured types delete from model
1 parent 347f328 commit ed834e4

File tree

5 files changed

+18
-34
lines changed

5 files changed

+18
-34
lines changed

commons/tools/plugins/org.obeonetwork.tools.classdiagramgenerator.editor/description/StructuredTypesDiagramTemplate.odesign

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -674,14 +674,12 @@
674674
</ownedTools>
675675
</toolSections>
676676
<toolSections name="Usability tools">
677-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized" forceRefresh="true">
677+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:false" forceRefresh="true">
678678
<element name="element"/>
679679
<elementView name="elementView"/>
680680
<containerView name="containerView"/>
681681
<initialOperation>
682-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
683-
<subModelOperations xsi:type="tool_1:DeleteView"/>
684-
</firstModelOperations>
682+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
685683
</initialOperation>
686684
</ownedTools>
687685
<ownedTools xsi:type="tool:DiagramCreationDescription" name="New external Entities diagram" label="{Hierarchy.section.usability.diagramCreation.label}" forceRefresh="true" browseExpression="aql:self.eContainer(environment::Namespace)" diagramDescription="//@ownedViewpoints[name='StructuredTypesDiagramTemplate']/@ownedRepresentations[name='{ClassDiagram.id}']">
@@ -705,14 +703,12 @@
705703
</firstModelOperations>
706704
</initialOperation>
707705
</ownedTools>
708-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized">
706+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:false">
709707
<element name="element"/>
710708
<elementView name="elementView"/>
711709
<containerView name="containerView"/>
712710
<initialOperation>
713-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
714-
<subModelOperations xsi:type="tool_1:DeleteView"/>
715-
</firstModelOperations>
711+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
716712
</initialOperation>
717713
</ownedTools>
718714
<ownedTools xsi:type="tool:ContainerDropDescription" name="DAD_ED_ExternalStructuredType_Referenced" precondition="aql:let diagram=newViewContainer.eContainerOrSelf(diagram::DSemanticDiagram) in not diagram.synchronized and newContainer.getAllReferencedStructuredTypes(diagram)->includes(element) endlet" dragSource="PROJECT_EXPLORER">

designs/database/plugins/org.obeonetwork.dsl.database.design/description/database.odesign

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@
354354
</toolSections>
355355
</additionalLayers>
356356
<additionalLayers name="External Tables" activeByDefault="true">
357-
<containerMappings name="DB_Non_Referenced_External_Table" deletionDescription="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@defaultLayer/@toolSections.2/@ownedTools[name='DB_Delete']" semanticCandidatesExpression="service:allNonReferencedExternalTables" createElements="false" semanticElements="var:self" domainClass="database::Table" childrenPresentation="List">
357+
<containerMappings name="DB_Non_Referenced_External_Table" deletionDescription="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@toolSections.0/@ownedTools[name='DEL_Prevent_Deletion_Ext_Tables']" semanticCandidatesExpression="service:allNonReferencedExternalTables" createElements="false" semanticElements="var:self" domainClass="database::Table" childrenPresentation="List">
358358
<subNodeMappings name="DB_Ext_Column" deletionDescription="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@defaultLayer/@toolSections.2/@ownedTools[name='DB_Delete']" semanticCandidatesExpression="feature:columns" semanticElements="aql:self->including(self.sequence)" synchronizationLock="true" domainClass="database::Column">
359359
<style xsi:type="style:SquareDescription" labelExpression="service:getDatabaseElementLabel" labelColor="//@userColorsPalettes[name='DomainColors']/@entries[name='ISDLabelAndEdge']" labelAlignment="LEFT">
360360
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
@@ -369,7 +369,7 @@
369369
</subNodeMappings>
370370
<style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" borderColor="//@userColorsPalettes[name='DomainColors']/@entries[name='ISDBorder']" labelSize="10" labelExpression="aql:self.ancestors()->filter(database::TableContainer)->reverse().name->sep('::') ->toString()+'::'+self.name" labelColor="//@userColorsPalettes[name='DomainColors']/@entries[name='ISDLabelAndEdge']" backgroundColor="//@userColorsPalettes[name='DomainColors']/@entries[name='DatabaseFillLight']" foregroundColor="//@userColorsPalettes[name='DomainColors']/@entries[name='DatabaseFillLight']"/>
371371
</containerMappings>
372-
<containerMappings name="DB_Referenced_External_Table" deletionDescription="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@defaultLayer/@toolSections.2/@ownedTools[name='DB_Delete']" semanticCandidatesExpression="service:allReferencedExternalTables" semanticElements="var:self" domainClass="database::Table" reusedNodeMappings="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@containerMappings[name='DB_Non_Referenced_External_Table']/@subNodeMappings[name='DB_Ext_Column'] //@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@containerMappings[name='DB_Non_Referenced_External_Table']/@subNodeMappings[name='DB_Ext_PrimaryKey']" childrenPresentation="List">
372+
<containerMappings name="DB_Referenced_External_Table" deletionDescription="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@toolSections.0/@ownedTools[name='DEL_Prevent_Deletion_Ext_Tables']" semanticCandidatesExpression="service:allReferencedExternalTables" semanticElements="var:self" domainClass="database::Table" reusedNodeMappings="//@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@containerMappings[name='DB_Non_Referenced_External_Table']/@subNodeMappings[name='DB_Ext_Column'] //@ownedViewpoints[name='Database']/@ownedRepresentations[name='Database%20Diagram']/@additionalLayers[name='External%20Tables']/@containerMappings[name='DB_Non_Referenced_External_Table']/@subNodeMappings[name='DB_Ext_PrimaryKey']" childrenPresentation="List">
373373
<style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" borderColor="//@userColorsPalettes[name='DomainColors']/@entries[name='ISDBorder']" labelSize="10" labelExpression="aql:self.ancestors()->filter(database::TableContainer)->reverse().name->sep('::') ->toString()+'::'+self.name" labelColor="//@userColorsPalettes[name='DomainColors']/@entries[name='ISDLabelAndEdge']" backgroundColor="//@userColorsPalettes[name='DomainColors']/@entries[name='DatabaseFillLight']" foregroundColor="//@userColorsPalettes[name='DomainColors']/@entries[name='DatabaseFillLight']">
374374
<labelFormat>bold</labelFormat>
375375
</style>

designs/entity/plugins/org.obeonetwork.dsl.entity.design/description/entity.odesign

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -694,14 +694,12 @@
694694
</ownedTools>
695695
</toolSections>
696696
<toolSections name="Usability tools">
697-
<ownedTools xsi:type="tool_1:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized" forceRefresh="true">
697+
<ownedTools xsi:type="tool_1:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:false" forceRefresh="true">
698698
<element name="element"/>
699699
<elementView name="elementView"/>
700700
<containerView name="containerView"/>
701701
<initialOperation>
702-
<firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:elementView">
703-
<subModelOperations xsi:type="tool:DeleteView"/>
704-
</firstModelOperations>
702+
<firstModelOperations xsi:type="tool:ChangeContext" browseExpression="aql:self"/>
705703
</initialOperation>
706704
</ownedTools>
707705
<ownedTools xsi:type="tool_1:DiagramCreationDescription" name="New external Entities diagram" label="New Entities Diagram" forceRefresh="true" browseExpression="aql:self.eContainer(environment::Namespace)" diagramDescription="//@ownedViewpoints[name='Entity%20Views']/@ownedRepresentations[name='Entities%20Diagram']">
@@ -725,14 +723,12 @@
725723
</firstModelOperations>
726724
</initialOperation>
727725
</ownedTools>
728-
<ownedTools xsi:type="tool_1:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized">
726+
<ownedTools xsi:type="tool_1:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:false">
729727
<element name="element"/>
730728
<elementView name="elementView"/>
731729
<containerView name="containerView"/>
732730
<initialOperation>
733-
<firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:elementView">
734-
<subModelOperations xsi:type="tool:DeleteView"/>
735-
</firstModelOperations>
731+
<firstModelOperations xsi:type="tool:ChangeContext" browseExpression="aql:self"/>
736732
</initialOperation>
737733
</ownedTools>
738734
<ownedTools xsi:type="tool_1:ContainerDropDescription" name="DAD_ED_ExternalStructuredType_Referenced" precondition="aql:let diagram=newViewContainer.eContainerOrSelf(diagram::DSemanticDiagram) in not diagram.synchronized and newContainer.getAllReferencedStructuredTypes(diagram)->includes(element) endlet" dragSource="PROJECT_EXPLORER">

designs/graal/plugins/org.obeonetwork.graal.design/description/graal.odesign

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1910,14 +1910,12 @@
19101910
</ownedTools>
19111911
</toolSections>
19121912
<toolSections name="Usability tools">
1913-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized" forceRefresh="true">
1913+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:false" forceRefresh="true">
19141914
<element name="element"/>
19151915
<elementView name="elementView"/>
19161916
<containerView name="containerView"/>
19171917
<initialOperation>
1918-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
1919-
<subModelOperations xsi:type="tool_1:DeleteView"/>
1920-
</firstModelOperations>
1918+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
19211919
</initialOperation>
19221920
</ownedTools>
19231921
<ownedTools xsi:type="tool:DiagramCreationDescription" name="New external Entities diagram" label="New Domain Classes Diagram" forceRefresh="true" browseExpression="aql:self.eContainer(environment::Namespace)" diagramDescription="//@ownedViewpoints[name='Graal%20Methodology']/@ownedRepresentations[name='Domain%20Classes%20Diagram']">
@@ -1941,14 +1939,12 @@
19411939
</firstModelOperations>
19421940
</initialOperation>
19431941
</ownedTools>
1944-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized">
1942+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:false">
19451943
<element name="element"/>
19461944
<elementView name="elementView"/>
19471945
<containerView name="containerView"/>
19481946
<initialOperation>
1949-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
1950-
<subModelOperations xsi:type="tool_1:DeleteView"/>
1951-
</firstModelOperations>
1947+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
19521948
</initialOperation>
19531949
</ownedTools>
19541950
<ownedTools xsi:type="tool:ContainerDropDescription" name="DAD_ED_ExternalStructuredType_Referenced" precondition="aql:let diagram=newViewContainer.eContainerOrSelf(diagram::DSemanticDiagram) in not diagram.synchronized and newContainer.getAllReferencedStructuredTypes(diagram)->includes(element) endlet" dragSource="PROJECT_EXPLORER">

designs/soa/plugins/org.obeonetwork.dsl.soa.design/description/soa.odesign

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1189,14 +1189,12 @@
11891189
</ownedTools>
11901190
</toolSections>
11911191
<toolSections name="Usability tools">
1192-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized" forceRefresh="true">
1192+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_NotReferenced" precondition="aql:false" forceRefresh="true">
11931193
<element name="element"/>
11941194
<elementView name="elementView"/>
11951195
<containerView name="containerView"/>
11961196
<initialOperation>
1197-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
1198-
<subModelOperations xsi:type="tool_1:DeleteView"/>
1199-
</firstModelOperations>
1197+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
12001198
</initialOperation>
12011199
</ownedTools>
12021200
<ownedTools xsi:type="tool:DiagramCreationDescription" name="New external Entities diagram" label="New DTO Diagram" forceRefresh="true" browseExpression="aql:self.eContainer(environment::Namespace)" diagramDescription="//@ownedViewpoints[name='SOA%20Views']/@ownedRepresentations[name='DTO%20Diagram']">
@@ -1220,14 +1218,12 @@
12201218
</firstModelOperations>
12211219
</initialOperation>
12221220
</ownedTools>
1223-
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:containerView.eContainerOrSelf(diagram::DSemanticDiagram).synchronized">
1221+
<ownedTools xsi:type="tool:DeleteElementDescription" name="DEL_ED_ExternalStructuredType_Referenced" precondition="aql:false">
12241222
<element name="element"/>
12251223
<elementView name="elementView"/>
12261224
<containerView name="containerView"/>
12271225
<initialOperation>
1228-
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:elementView">
1229-
<subModelOperations xsi:type="tool_1:DeleteView"/>
1230-
</firstModelOperations>
1226+
<firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:self"/>
12311227
</initialOperation>
12321228
</ownedTools>
12331229
<ownedTools xsi:type="tool:ContainerDropDescription" name="DAD_ED_ExternalStructuredType_Referenced" precondition="aql:let diagram=newViewContainer.eContainerOrSelf(diagram::DSemanticDiagram) in not diagram.synchronized and newContainer.getAllReferencedStructuredTypes(diagram)->includes(element) endlet" dragSource="PROJECT_EXPLORER">

0 commit comments

Comments
 (0)