source: trunk/ETSI-Testsuites/ETSI_auto_IOT/ttcn/LibIot/LibIot_TypesAndValues.ttcn

Last change on this file was 22, checked in by rings, 14 years ago
  • Property svn:executable set to *
File size: 5.7 KB
Line 
1/*
2 *      @author         STF 370
3 *  @version    $Id: LibIot_TypesAndValues.ttcn 16 2009-06-16 15:06:42Z pintar $
4 *      @desc           This module provides the (message) types and constants used by the test component
5 *              for Iot tests.
6 */
7
8module LibIot_TypesAndValues {
9       
10        import from LibCommon_BasicTypesAndValues {type UInt32, UInt16;}
11
12        import from LibCommon_VerdictControl {type FncRetCode;}
13
14        group commonTypes {
15          type enumerated IOTExecMode { e_realtime, e_offline }
16
17                type record Status {
18                        FncRetCode code,
19                        charstring reason optional
20                }
21               
22        }
23               
24        group interfaceInformationrelatedTypes {
25         
26        /**
27         *
28         * @desc IP address type e.g. "127.0.0.1"
29         */
30        type charstring IpAddress;
31       
32        /**
33         *
34         * @desc Type for port number, e.g. "5060"
35         */
36        type UInt16 PortNumber;
37       
38        /**
39         *
40         * @desc List of port numbers
41         */
42        type record of PortNumber PortNumberList;
43       
44        type record InterfaceAvailable {
45                charstring interfaceName,
46                boolean available       
47        }
48       
49        type set of InterfaceAvailable InterfaceAvailableList;
50       
51        /**
52         *
53         * @desc Required information for IP interfaces
54         * @member domainName the domain name
55         * @member IpAddress the ip address
56         * @member portNumbers the list of port numbers where message are received
57         */
58        type record IpInterfaceInfo {
59           charstring domainName optional,
60           IpAddress IpAddress,
61           PortNumberList portNumbers   
62        }
63       
64        /**
65         *
66         * @desc List of IP interfacees
67         */
68        type record of IpInterfaceInfo IpInterfaceInfoList;
69       
70        /**
71         *
72         * @desc Collection of different interface types, e.g for IP communications
73         *       This type can be extended with new alternative for other interface types
74         */
75        type union InterfaceInfo {
76           IpInterfaceInfoList IpInterfaceInfo
77        }
78       
79        /**
80         *
81         * @desc Type for representing EUT interface information for monitored logical interfaces
82         * @member interfaceName Name of logical interface
83         * @member interfaceInfo Interface information specific to this logical interface
84         */
85        type record MonitorInterfaceInfo {
86           charstring interfaceName,
87           InterfaceInfo interfaceInfo 
88        }
89       
90        /**
91         *
92         * @desc List of monitored interfaces
93         */
94        type record of MonitorInterfaceInfo MonitorInterfaceInfoList;
95 
96        /**
97         *
98         * @desc Product specific EUT interface information
99         * @member name the name of the vendor
100         * @member monitorInterfaces monitor interface configuration
101         */
102        type record Product {
103           charstring productName,
104           MonitorInterfaceInfoList monitorInterfaces
105        }
106       
107        /**
108         *
109         * @desc List of product specificr EUT interface information
110         */
111        type record of Product ProductList;
112        }
113       
114
115
116        group adapterConfigurationTypes {
117               
118    type union CaptureMode {
119      LiveCapture liveCpature,
120      OfflineCapture offlineCapture
121    }
122   
123    //
124    type record of charstring PhysicalInterfaceList;
125         
126    type record LiveCapture {
127        PhysicalInterfaceList physicalInterfaces, // TODO document example syntax
128      RecordMode            recordMode
129    }
130   
131    type enumerated RecordMode {
132      e_norecord,
133      e_record 
134    }
135   
136    type record of charstring FileList;
137
138    type record MergeFileList {
139      FileList    mergeFileList,
140      charstring  mergeFilePath,   
141      charstring  mergeToolPath   
142    }
143   
144    type record CaptureSource {
145        charstring sessionsPath, // e.g., the path where session's PCAP files are located like /tmp/19
146        MergeFileList mergeFileList
147    }
148   
149    type record TimeOffset
150    {
151      UInt32 seconds,
152      UInt32 microseconds
153    }
154   
155    type record OfflineCapture {
156      TimeOffset     offset,
157      CaptureSource  captureSource
158    }
159   
160  /**
161   *
162   * @desc Required information for EUTs IP interfaces
163   * @member IpAddress the ip address
164   * @member portNumber the list of port number where message are received
165   */
166  type record EutInterfaceInfo {
167     charstring     eut,
168     IpAddress      ipAddress,
169     PortNumber     portNumber
170  }
171 
172 /**
173   *
174   * @desc List of IP interfaces for EUTs
175   */
176  type record of EutInterfaceInfo EutInterfaceInfoList;
177 
178
179   
180    type record GeneralConfigurationReq {
181      charstring  captureProcessIpAddress,
182      PortNumber  captureProcessPort,
183      CaptureMode captureMode,
184      EutInterfaceInfoList eutInfoList optional
185    }
186   
187    type record GeneralConfigurationRsp
188    {
189      Status status
190    }
191   
192   
193    //type record (2..infinity) of InterfaceInfo InterfaceInfoList;
194    type record of InterfaceInfo InterfaceInfoList;
195   
196    type enumerated ProtocolFilter {
197        e_sip,
198        e_dns
199    }
200   
201    type record SetFilterReq {
202      ProtocolFilter    protocol,
203      InterfaceInfoList interfaceInfos
204    }
205
206       
207    type record SetFilterRsp
208    {
209      Status status
210    }
211   
212   
213    type record StartTrafficCaptureReq { }
214   
215    type record StartTrafficCaptureRsp
216    {
217      Status status
218    }
219   
220   
221    type record StopTrafficCaptureReq { }
222 
223    type record StopTrafficCaptureRsp
224    {
225      Status status
226    }
227
228        }
229
230        group oracleRelatedTypes {
231          // used for PIXIT definition
232          type enumerated IotVerdictType { e_e2e, e_conformance }
233       
234          // used for verdict handling
235          type record VerdictType {
236                  verdicttype verdict,
237                 charstring reason optional     
238          }
239       
240          type union IotVerdict {
241                  VerdictType e2e,
242                  VerdictType conformance       
243          }
244        }
245        /**
246     * @desc Default record
247     */
248        type record of default DefaultList;
249   
250        type record ComponentId {
251                charstring name,
252                integer index // explain more
253        }
254   
255        type set of ComponentId ComponentIdList;
256}
Note: See TracBrowser for help on using the repository browser.