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

Bug 317947

Summary: Eugenia generation fails silently due to incorrect naming conflict
Product: [Modeling] Epsilon Reporter: Frank Burton <frank>
Component: CoreAssignee: Dimitris Kolovos <dkolovos>
Status: CLOSED INVALID QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Frank Burton CLA 2010-06-25 06:49:13 EDT
Build Identifier: 

If 2 classes A & B point to each other with a shared link called "foo" then a 3rd class C points to A or B with a normal link using the same name "foo", Eugenia fails to generate a Map file

Reproducible: Always

Steps to Reproduce:
Create emf file containing following code:

"
@namespace(uri="Scenario",prefix="Scenario")
package Scenario;
@gmf(foo="bar")

@gmf.diagram(foo="bar")
class TestCase
{
	@gmf.compartment(foo="bar")
	val A[*] A;
	val B[*] B;
}

@gmf.node(label = "AName")
class A
{
	attr String AName;
	@gmf.link(target.decoration="arrow", style="dash")
	ref B[*]#a b;  
}

@gmf.node(label = "BName")
class B
{
   attr String BName;
   ref A[1]#b a;
}

@gmf.node(label = "BName")
class C
{
	@gmf.link(target.decoration="arrow", style="dash") //Commenting out this link will allow the map file to be generated
	ref B[*] b;
}
"

Generate Ecore
Generate GMF Tool, Graph and Map Models from Ecore file
No map file is produced and no error is given
Comment 1 Dimitris Kolovos CLA 2013-04-08 04:19:23 EDT
The problem with this example appears to be that Class C is missing an attribute named "BName".
Comment 2 Dimitris Kolovos CLA 2013-04-27 05:31:24 EDT
Closing as invalid.
Comment 3 Dimitris Kolovos CLA 2013-04-27 05:32:59 EDT
Changing status to closed.