ETSI's Bug Tracker - Part 05: TTCN-3 Runtime Interface
View Issue Details

ID | Project | Category | View Status | Date Submitted | Last Update
0005485 | Part 05: TTCN-3 Runtime Interface | Technical | public | 17-03-2010 11:26 | 25-03-2010 10:05

Reporter | Andrus Lehtmets |
Assigned To | Ina Schieferdecker |
Priority | high | Severity | major | Reproducibility | have not tried
Status | closed | Resolution | fixed |
Platform |  | OS |  | OS Version |
Product Version |  |
Target Version | v4.2.1 (published 2010-07) | Fixed in Version | v4.2.1 (published 2010-07) |
Clause Reference(s) | Part 6: TTCN-3 Runtime Interface (TRI); Part 5: TTCN-3 Runtime Interface (TRI) , v. 4.1.1
Source (company - Author) | Elvior

Summary | 0005485: C++ mapping issues in TRI and TCI specifications (v. 4.1.1)
Description | We have found several issues in C++ mapping for TRI and TCI (TTCN-3 v.4.1.1), see attached document.
Steps To Reproduce |
Additional Information |
Tags | No tags attached.

Relationships

related to | 0005489 | closed | Ina Schieferdecker | Part 06: TTCN-3 Control Interface | TCI C++ mapping fixes

Attached Files

CPP_Issues.pdf (93,137) 17-03-2010 11:26
http://oldforge.etsi.org/mantis/file_download.php?file_id=2339&type=bug
CPP_Issues.doc (36,352) 18-03-2010 07:47
http://oldforge.etsi.org/mantis/file_download.php?file_id=2341&type=bug
CPP_Mapping_fixes_for_TRI.doc (33,280) 22-03-2010 14:24
http://oldforge.etsi.org/mantis/file_download.php?file_id=2343&type=bug
CPP_Mapping_fixes_for_TRI_v2.doc (34,816) 23-03-2010 08:49
http://oldforge.etsi.org/mantis/file_download.php?file_id=2345&type=bug
es_20187305v040103.zip (235,926) 25-03-2010 10:04
http://oldforge.etsi.org/mantis/file_download.php?file_id=2360&type=bug

Issue History
Date Modified | Username | Field | Change
17-03-2010 11:26 | Andrus Lehtmets | New Issue |
17-03-2010 11:26 | Andrus Lehtmets | File Added: CPP_Issues.pdf |
17-03-2010 11:26 | Andrus Lehtmets | Clause Reference(s) | => Part 6: TTCN-3 Runtime Interface (TRI); Part 5: TTCN-3 Runtime Interface (TRI) , v. 4.1.1
17-03-2010 11:26 | Andrus Lehtmets | Source (company - Author) | => Elvior
18-03-2010 07:47 | Andrus Lehtmets | File Added: CPP_Issues.doc |
22-03-2010 14:24 | Andrus Lehtmets | File Added: CPP_Mapping_fixes_for_TRI.doc |
22-03-2010 14:26 | Andrus Lehtmets | Note Added: 0009242 |
22-03-2010 14:56 | Ina Schieferdecker | Project | TTCN-3 Change Requests => Part 05: TTCN-3 Runtime Interface
22-03-2010 14:56 | Ina Schieferdecker | Relationship added | related to 0005489
22-03-2010 15:59 | Raul Alfonso | Note Added: 0009243 |
22-03-2010 16:18 | Gyorgy Rethy | Assigned To | => Ina Schieferdecker
22-03-2010 16:18 | Gyorgy Rethy | Priority | normal => high
22-03-2010 16:18 | Gyorgy Rethy | Status | new => assigned
22-03-2010 16:20 | Gyorgy Rethy | Target Version | => Edition 4.2.1 (not yet published)
23-03-2010 08:49 | Andrus Lehtmets | File Added: CPP_Mapping_fixes_for_TRI_v2.doc |
23-03-2010 08:56 | Andrus Lehtmets | Note Added: 0009249 |
23-03-2010 16:22 | Raul Alfonso | Note Added: 0009269 |
24-03-2010 16:37 | Ina Schieferdecker | Note Added: 0009288 |
24-03-2010 17:24 | Ina Schieferdecker | Note Edited: 0009288 |
24-03-2010 17:25 | Ina Schieferdecker | File Added: es_20187305v040103.zip |
24-03-2010 17:25 | Ina Schieferdecker | Assigned To | Ina Schieferdecker => Gyorgy Rethy
24-03-2010 17:25 | Ina Schieferdecker | Status | assigned => resolved
24-03-2010 17:25 | Ina Schieferdecker | Resolution | open => fixed
24-03-2010 17:25 | Ina Schieferdecker | Fixed in Version | => Edition 4.2.1 (not yet published)
24-03-2010 17:29 | Gyorgy Rethy | Assigned To | Gyorgy Rethy => Ina Schieferdecker
24-03-2010 17:29 | Gyorgy Rethy | Status | resolved => assigned
25-03-2010 09:54 | Ina Schieferdecker | File Deleted: es_20187305v040103.zip |
25-03-2010 09:55 | Ina Schieferdecker | File Added: es_20187305v040103.zip |
25-03-2010 10:03 | Ina Schieferdecker | File Deleted: es_20187305v040103.zip |
25-03-2010 10:04 | Ina Schieferdecker | File Added: es_20187305v040103.zip |
25-03-2010 10:04 | Ina Schieferdecker | Status | assigned => resolved
25-03-2010 10:05 | Ina Schieferdecker | Status | resolved => closed

Notes

(0009242)
Andrus Lehtmets
22-03-2010 14:26

CPP_Mapping_fixes_for_TRI.doc contains fixes with refers to existing chapters v.4.2.1 draft.

(0009243)
Raul Alfonso
22-03-2010 15:59

MTP is disagreed with the points 2.6 (TriDataFactory) and 2.8.3 (remove getTId methods). 2.6.- We think TriDataFactory is not necessary and we don't understand how we have to use it. 2.8.3.- Document virtual const Tinteger getTId() const =0 but not remove.

(0009249)
Andrus Lehtmets
23-03-2010 08:56

Uploaded new version of document.
2.3 virtual const Tinteger getTId() const =0 - my mistake added description of the method
2.6.TriDataFactory
We still want it, because it makes it possible to have vendor implementation independent object instantiation.
How to use it? Here are some examples:
A static TriDataFactory factory instance can be accessed by using the standard "TriDataFactory" identifier:
Java:
TriDataFactory.getInstance()
C++:
TriDataFactory::getInstance()
The vendor specific TRI object implementation instances can ge created using the stadard methods:
Java:
TriDataFactory.getInstance().createTriMessage();
C++:
TriDataFactory::getInstance().createTriMessage();

(0009269)
Raul Alfonso
23-03-2010 16:22

We don't understand which entity of TTCN3 test system take the responsability to implement TriDataFactory. For example, in the TriCommunicationTE could be a method to get the instance of TriDataFactory, so the TE (and tool vendor) has to implement the TriDataFactory (as TciType, newInstance method and getTypeForName method of CD-Required).
TciType, newInstance and getTypeForName has a formal specification so there is a mapping in C, Java, C++ ..., but TriDataFactory doesn't have that specification and we don't understand what is mapping.

(0009288)
Ina Schieferdecker
24-03-2010 16:37 (edited on: 24-03-2010 17:24)

The STF discussed that the TriDataFactory is as such not part of the TRI interface. It is not to be included.
The other things implemented as proposed.
In addition, equals changed to operator== as it is done in the TCI mapping.
TriParameterPassingMode, TriStatus defined as enum.
According to 2.8 also removed
virtual const std::vector< const TriParameter * > & getParameters () const =0;
virtual const std::vector< const TriPortId * > & getPortIds () const =0;