Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [Solved][ATL] Inconsistencies between normal and programmatic execution mode
[Solved][ATL] Inconsistencies between normal and programmatic execution mode [message #849577] Thu, 19 April 2012 05:11 Go to next message
Mifaz Ke is currently offline Mifaz Ke
Messages: 3
Registered: November 2011
Junior Member
Hi everyone,

im facing a strange Problem. I'm trying to perform a M2M transformation from a Java-Model to an UML-Model. This transformation consists of three seperate ATL transformations. First i perform Java2UML and then two refining transformations.

Now my Problem:

When i perform this transformations in normal execution mode (in Eclipse with Run Configurations) the resulting UML-Model looks like picture 1. Interesting is that the first refining transformation moves the Package references correctly into the Model.

When i perform the transformations in programatic execution mode (via an context menu Action written in Java) the resulting UML-Model looks like picture 2. U see the references Package now lies inside and outside the Model. Strange thing is, if i delete the references Package outside the Mode3l, the inner is deleted and the one outside still is in the UML-Model.

So, my question is: Is there a Problem or known Bug in programmatic execution mode or is it perhaps only a Problem of my written Java-Code? If you wish, i can attatch the Java-Code of my transformation execution.

Thanks for your answers,

Greetings Mifaz Ke

EDIT: I decided to attach the Rule which moves the Package into the Model, perhaps the Problem lies there. But as said above, when executing in normal mode, the result is absolutly correct..

rule MoveRefPackageIntoModel {
	from
		model : UML!Model
		,refPackage : UML!Package (
			model.oclIsTypeOf(UML!Model) and refPackage.oclIsTypeOf(UML!Package)
			and model.name <> 'JavaPrimitiveTypes'
			and model.name <> 'UMLPrimitiveTypes'
			and refPackage.name = 'references'
		)
	to
		newModel : UML!Model (
			packagedElement <- refPackage
		)
}
  • Attachment: picture1.jpg
    (Size: 146.98KB, Downloaded 126 times)
  • Attachment: picture2.jpg
    (Size: 83.49KB, Downloaded 113 times)

[Updated on: Thu, 19 April 2012 05:46]

Report message to a moderator

Re: [solved][ATL] Inconsistencies between normal and programmatic execution mode [message #849609 is a reply to message #849577] Thu, 19 April 2012 05:45 Go to previous message
Mifaz Ke is currently offline Mifaz Ke
Messages: 3
Registered: November 2011
Junior Member
Hi all,

i've solved the Problem. I simply forgot to configure the ILauncher in refining mode with launcher.addInOutModel. So the ILauncher was configured only with launcher.addInModel and that produced an other UML-Model than normal execution mode.

Greetings
Previous Topic:[ATL] and GMF
Next Topic:question about "ATL/Tutorials - Create a simple ATL transformation"
Goto Forum:
  


Current Time: Wed Jul 23 03:57:17 EDT 2014

Powered by FUDForum. Page generated in 0.02723 seconds