Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 429753

Summary: Invalid egdes with unsynchronized mode
Product: [Modeling] Sirius Reporter: Laurent Redor <laurent.redor>
Component: DiagramAssignee: Laurent Redor <laurent.redor>
Status: CLOSED FIXED QA Contact: Pierre-Charles David <pierre-charles.david>
Severity: normal    
Priority: P3 CC: maxime.porhel, pierre-charles.david
Version: 0.9Keywords: triaged
Target Milestone: 1.0.0M7   
Hardware: All   
OS: All   
Whiteboard:
Attachments:
Description Flags
Use case for the steps to reproduce none

Description Laurent Redor CLA 2014-03-06 05:28:35 EST
Created attachment 240583 [details]
Use case for the steps to reproduce

It is possible to have incoherent edges visible on an unsynshonized diagram.

Steps to reproduce:
* Import the project of unsyncReconnectUseCase.zip
* Open the 2 diagrams (DiagramWithReconnect-Sync and DiagramWithReconnect-unsync)
* In DiagramWithReconnect-Sync, move the edge from NewEClass to NewEClassChange.
* In DiagramWithReconnect-Unsync, the edge would have to disappear : KO
Comment 1 Laurent Redor CLA 2014-03-06 05:58:57 EST
When checking whether the existing edges must remain in unsynchonized diagram, it lacks a control to determine if the semantics source and target are always OK according to sourceFinderExpression and targetFinderExpression of the mapping.

See org.eclipse.sirius.business.internal.experimental.sync.DEdgeSynchronizerHelper.handlePreviousCandidates(Collection<DEdgeCandidate>, Iterable<DDiagramElement>, EdgeMapping, Map<EObject, Collection<EdgeTarget>>, Map<EObject, Collection<EdgeTarget>>) in stillCandidate predicate.
Comment 2 Maxime Porhel CLA 2014-03-07 07:54:10 EST
See https://git.eclipse.org/r/22993
Comment 3 Laurent Redor CLA 2014-03-20 05:39:00 EDT
Fixed through commit c088cb034e68b59d082d0c26043dbff111f9c266: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=c088cb034e68b59d082d0c26043dbff111f9c266
Comment 4 Pierre-Charles David CLA 2014-05-05 07:08:58 EDT
Verified on 1.0.0M7rc1 (1.0.0.20405030833).
Comment 5 Pierre-Charles David CLA 2014-05-12 03:46:17 EDT
Available in Sirius 1.0.0M7 (see https://wiki.eclipse.org/Sirius/1.0.0M7 & http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tag/?id=v1.0.0M7).