Welcome to Telelogic Product Support
  Home Downloads Knowledgebase Case Tracking Licensing Help Telelogic Passport
Telelogic TAU (steve huntington)
Decrease font size
Increase font size
Topic Title: IDL reverse engineering
Topic Summary:
Created On: 6-Apr-2006 11:56
Status: Read Only
Linear : Threading : Single : Branch
Search Topic Search Topic
Topic Tools Topic Tools
Subscribe to this topic Subscribe to this topic
E-mail this topic to someone. E-mail this topic
Bookmark this topic Bookmark this topic
View similar topics View similar topics
View topic in raw text format. Print this topic.
 6-Apr-2006 11:56
User is offline View Users Profile Print this message


Aitor Illarramendi

Posts: 38
Joined: 20-Feb-2006

Hello: Does anyone know if v2.6 does have CORBA IDL reverse engineering capabilities? Thanks in advance. Best regards.
Report this to a Moderator Report this to a Moderator
 6-Apr-2006 16:16
User is offline View Users Profile Print this message


Greg Gorman

Posts: 75
Joined: 4-Oct-2002

Hi Aitor,
At this point we do not. There hasn't been a lot of demand for it so it's low on the priority list.

It would also be pretty easy to do in the field via Tcl or COM or C++ because IDL syntax is fairly simple. If it's something you urgently need I suggest checking with our Professional Services department or your account manager so they can help you create an importer.

/Greg

-------------------------
Greg Gorman
Vice President, Product Management
Modeling and Test Products
Telelogic AB
Report this to a Moderator Report this to a Moderator
 6-Apr-2006 16:51
User is offline View Users Profile Print this message


Aitor Illarramendi

Posts: 38
Joined: 20-Feb-2006

Thank you. Mmmmm... I think is simple too. Perhaps we could sort out by our own regards
Report this to a Moderator Report this to a Moderator
 6-Apr-2006 18:53
User is offline View Users Profile Print this message


Aitor Illarramendi

Posts: 38
Joined: 20-Feb-2006

Just another question. Which are the id formats used by TAU in XMI import and export for the CORBA stereotypes? Are those standard? I mean, is there a standard? Suposing that I have an XMI file, let's say Unisys, XMI 1.0, XMI 1.1... Could I import a model from these kind of stereotypes? I'm looking of what generates TAU in XMI from the model bases on CORBA plug-in, and what generate other tools. TAU defines for example the CORBAModule stereotype as: UML:Stereotype xmi.id="i.245.11306cc0" name="CORBAModule" icon="" baseClass="Package" extendedElement="YksXpE4ySq0LnLAjdIpKdenL" And for example another tool like MagicDraw does it as: Foundation.Extension_Mechanisms.Stereotype xmi.id="magicdraw_1046768528276_725410_350" xmi.uuid="magicdraw_1046768528276_725410_350" Foundation.Core.ModelElement.name CORBAModule Foundation.Core.ModelElement.name Looks like each tool makes different exchange XML for the same model. Mmmmm the Magic Draw version uses UnisysJCR2 but with XMI 1.0 and 1.3.2 exporter and TAU uses XMI 1.1 with UnisysJCR2 and 1.3.6 exporter... It looks like that it has a equal structure when using XMI 1.1 in MagicDraw. Anyways, each of them extract project specific data in the XMI so the import/export does not work well in both ways. But in the case both were the same? Any ideas? To use consultancy for creating an add-in for only 50 IDLs is no worth doing it. I think we can sort out it. Many thanks in advance. Another question... How could I print prettier messages? Best regards.

Edited: 7-Apr-2006 at 10:35 by Aitor Illarramendi
Report this to a Moderator Report this to a Moderator
 7-Apr-2006 12:18
User is offline View Users Profile Print this message


Aitor Illarramendi

Posts: 38
Joined: 20-Feb-2006

Suposing we have developed an IDL parser. Which would be the best languange/way of translating the IDL to TAU model? Making a XMI file by seeing how it does TAU? (Does TAU ensure that after exporting in XMI a CORBAGenerator Model, with the CORBAArtifact and so, the ImportXMI capability returns the same model?) Invoking some TAU SDK API methods in order to create directly the objects in the TAU model? Best regards.
Report this to a Moderator Report this to a Moderator
 13-Apr-2006 14:51
User is offline View Users Profile Print this message


Ian Barnard

Posts: 91
Joined: 4-Jul-2002

Aitor

One approach is to write your parser outside TAU which converts IDL into textual u2 syntax in a file, and load this file into your model. Using this approach you will embed stereotype names in the text of the generated u2 and have to provide definitions of these stereotypes, either in the same u2 file or in a profile which you load into TAU, or they can be provided by the corba idl generator.

Another would be to write the parser using the tcl or COM apis to create model directly.

Yes you could make your parser generate XMI but this is likely to be a lot more complex.

Which of the first two is easier depends on what you need and your skills:
If this is more of a one-off then implementing it outside TAU probably in a scripting language like perl or python is probably the simplest route
If this is needed more than once then developing an addin makes more sense, and you should use tcl or C++.

HTH
Ian

-------------------------
=============
Ian Barnard
Principal Consultant
Telelogic UK, an IBM company
Report this to a Moderator Report this to a Moderator
 13-Apr-2006 23:51
User is offline View Users Profile Print this message


Ian Barnard

Posts: 91
Joined: 4-Jul-2002

Assuming you're going for the external app creating u2 text content in a file, here are some guidelines:

A good way of determining the sort of u2 text you need is:
a) Create a model with a top level package, e.g. called main.
b) In main, create a package e.g. called example, which contains only a small example of the model you want, stereotyped exactly as you need, including one of everything you want
c) In the main package, create a class diagram and put a text symbol on it, then drag/drop the example package from the model view into the text symbol: this the sort of text you want to create using the external IDL parser app.

To load a u2 text file into TAU, see the instructions outline below (courtesy of Erik Mats in Telelogic US support office).

To include an existing textual UML file:

1. Create a new <> artifact (i.e. create an Artifact and instantiate the TTDFileModel::u2pFile stereotype on it)
2. In the <> instance, specify the path of the U2P file.
3. Right-click the artifact and select "Update model from U2P file" from the context menu, to parse the file.

To store model elements in a new textual UML file:

1. Create a new <> artifact (see above)
2. In the <> instance, specify the path of a new U2P file.
3. Create a new <> dependency from the artifact to some package/class/etc.

Once your file and model are set up:
1. Edit the model to your heart's content.
2. Right-click the artifact and select "Update U2P file from model" from the context menu to unparse the manifested model element into the file.
3. Edit the file to your heart's content (or update from some third party tool)
4. Right-click the artifact and select "Update model from U2P file" from the context menu, to parse the file, bringing any updates into the tool.

HTH
Ian


-------------------------
=============
Ian Barnard
Principal Consultant
Telelogic UK, an IBM company
Report this to a Moderator Report this to a Moderator
 13-Apr-2006 23:58
User is offline View Users Profile Print this message


Ian Barnard

Posts: 91
Joined: 4-Jul-2002

Nice to see the forum remove my stereotypes : in the text below something which looks like < < asd > > 'means stereotyped by asd'.

Assuming you're going for the external app creating u2 text content in a file, here are some guidelines:

A good way of determining the sort of u2 text you need is:
a) Create a model with a top level package, e.g. called main.
b) In main, create a package e.g. called example, which contains only a small example of the model you want, stereotyped exactly as you need, including one of everything you want
c) In the main package, create a class diagram and put a text symbol on it, then drag/drop the example package from the model view into the text symbol: this the sort of text you want to create using the external IDL parser app.

To load a u2 text file into TAU, see the instructions outline below (courtesy of Erik Mats in Telelogic US support office).

To include an existing textual UML file:

1. Create a new < < u2pFile > > artifact (i.e. create an Artifact and instantiate the TTDFileModel::u2pFile stereotype on it)
2. In the < < u2pFile > > instance, specify the path of the U2P file.
3. Right-click the artifact and select "Update model from U2P file" from the context menu, to parse the file.

To store model elements in a new textual UML file:

1. Create a new < < u2pFile > > artifact (see above)
2. In the < < u2pFile > > instance, specify the path of a new U2P file.
3. Create a new < < Manifest > > dependency from the artifact to some package/class/etc.

Once your file and model are set up:
1. Edit the model to your heart's content.
2. Right-click the artifact and select "Update U2P file from model" from the context menu to unparse the manifested model element into the file.
3. Edit the file to your heart's content (or update from some third party tool)
4. Right-click the artifact and select "Update model from U2P file" from the context menu, to parse the file, bringing any updates into the tool.

HTH
Ian

-------------------------
=============
Ian Barnard
Principal Consultant
Telelogic UK, an IBM company


Edited: 13-Apr-2006 at 23:59 by Ian Barnard
Report this to a Moderator Report this to a Moderator
 16-Apr-2006 20:45
User is offline View Users Profile Print this message


Aitor Illarramendi

Posts: 38
Joined: 20-Feb-2006

Many thanks Ian. I was on hollyday. I will try all you say ( after reading it ) and then I will notify you. Many thanks again.

Edited: 16-Apr-2006 at 20:46 by Aitor Illarramendi
Report this to a Moderator Report this to a Moderator
Statistics
20925 users are registered to the Telelogic TAU forum.
There are currently 1 users logged in.
The most users ever online was 15 on 31-Mar-2008 at 16:22.
There are currently 0 guests browsing this forum, which makes a total of 1 users using this forum.
You have posted 0 messages to this forum. 0 overall.

FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.