Loading generic_interface_configuration/Interface_configuration.ttcn3 +85 −82 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ module Interface_configuration { /** * * @desc Port number type e.g. "5060" * @desc Type for port number, e.g. "5060" */ type integer PortNumber; Loading @@ -20,76 +20,76 @@ module Interface_configuration { /** * * @desc IP interface type * @desc Required information for IP interfaces * @member domainName the domain name * @member IpAddress the ip address * @member portNumbers the list of port numbers * @member portNumbers the list of port numbers where message are received */ type record IpInterface { charstring domainName, type record IpInterfaceInfo { charstring domainName optional, IpAddress IpAddress, PortNumberList portNumbers } /** * * @desc List of IP interfaeces * @desc List of IP interfacees */ type record of IpInterface IpInterfaceList; type record of IpInterfaceInfo IpInterfaceInfoList; /** * * @desc Interface tpye e.g for IP communications * @desc Collection of different interface types, e.g for IP communications */ type union Interface { IpInterfaceList IpInterface type union InterfaceInfo { IpInterfaceList IpInterfaceInfo } /** * * @desc Monitor interface for analyzing * @member name the interface name * @member interface the interface definition * @desc Type for representing EUT interface information for monitored logical interfaces * @member interfaceName Name of logical interface * @member interfaceInfo Interface information specific to this logical interface */ type record MonitorInterface { charstring name, Interface interface type record MonitorInterfaceInfo { charstring interfaceName, InterfaceInfo interfaceInfo } /** * * @desc List of monitor interfaces * @desc List of monitored interfaces */ type record of MonitorInterface MonitorInterfaceList; type record of MonitorInterfaceInfo MonitorInterfaceInfoList; /** * * @desc Vendor specific configuration * @desc Product specific EUT interface information * @member name the name of the vendor * @member monitorInterfaces monitor interface configuration */ type record Vendor { charstring name, MonitorInterfaceList monitorInterfaces type record Product { charstring productName, MonitorInterfaceInfoList monitorInterfaces } /** * * @desc List of Vendor configurations * @desc List of product specificr EUT interface information */ type record of Vendor VendorList; type record of Product ProductList; /** * * @desc Specifies the vendor specific monitor interface configration * @desc Example of module parameter based entry of EUT interface information for all products particpating in an interoperability event */ modulepar VendorList PX_VENDORS := { modulepar ProductList PX_PRODUCTS := { { name := "Testing Tech", productName := "Testing Tech IMS Core", monitorInterfaces := { { name := "Gm", interfaceName := "Gm", interface := { IpInterface := { { Loading @@ -101,7 +101,7 @@ module Interface_configuration { } }, { name := "Mw", interfaceName := "Mw", interface := { IpInterface := { { Loading @@ -120,14 +120,14 @@ module Interface_configuration { } }, { name := "ETSI", productName := "ETSI UE", monitorInterfaces := { { name := "Mw", interfaceName := "Gm", interface := { IpInterface := { { domainName := "scscf.etsi.org", domainName := omit, IpAddress := "127.0.0.1", portNumbers := {5060} } Loading @@ -140,17 +140,20 @@ module Interface_configuration { /** * * @desc Defines the EUT A configuration form the vendor list * @desc Selects product based on index in PX_PRODCUTS vendor list for EUT_A */ modulepar integer EUT_A := 0; modulepar integer PX_EUT_A := 0; /** * * @desc Definies the EUT B configration form the vendor list * @desc Selects product based on index in PX_PRODCUTS vendor list for EUT_B */ modulepar integer EUT_B := 1; modulepar integer PX_EUT_B := 1; // TODO functions for information extraction from EUT interface information list (in templates and configuration functions) // EXAMPLE: function f_getIPaddress( vendor, interface name) returns IPAddressList // TODO Investigate set of "ATS specific" functions for simplifying data entry to EUT interface information list } No newline at end of file Loading
generic_interface_configuration/Interface_configuration.ttcn3 +85 −82 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ module Interface_configuration { /** * * @desc Port number type e.g. "5060" * @desc Type for port number, e.g. "5060" */ type integer PortNumber; Loading @@ -20,76 +20,76 @@ module Interface_configuration { /** * * @desc IP interface type * @desc Required information for IP interfaces * @member domainName the domain name * @member IpAddress the ip address * @member portNumbers the list of port numbers * @member portNumbers the list of port numbers where message are received */ type record IpInterface { charstring domainName, type record IpInterfaceInfo { charstring domainName optional, IpAddress IpAddress, PortNumberList portNumbers } /** * * @desc List of IP interfaeces * @desc List of IP interfacees */ type record of IpInterface IpInterfaceList; type record of IpInterfaceInfo IpInterfaceInfoList; /** * * @desc Interface tpye e.g for IP communications * @desc Collection of different interface types, e.g for IP communications */ type union Interface { IpInterfaceList IpInterface type union InterfaceInfo { IpInterfaceList IpInterfaceInfo } /** * * @desc Monitor interface for analyzing * @member name the interface name * @member interface the interface definition * @desc Type for representing EUT interface information for monitored logical interfaces * @member interfaceName Name of logical interface * @member interfaceInfo Interface information specific to this logical interface */ type record MonitorInterface { charstring name, Interface interface type record MonitorInterfaceInfo { charstring interfaceName, InterfaceInfo interfaceInfo } /** * * @desc List of monitor interfaces * @desc List of monitored interfaces */ type record of MonitorInterface MonitorInterfaceList; type record of MonitorInterfaceInfo MonitorInterfaceInfoList; /** * * @desc Vendor specific configuration * @desc Product specific EUT interface information * @member name the name of the vendor * @member monitorInterfaces monitor interface configuration */ type record Vendor { charstring name, MonitorInterfaceList monitorInterfaces type record Product { charstring productName, MonitorInterfaceInfoList monitorInterfaces } /** * * @desc List of Vendor configurations * @desc List of product specificr EUT interface information */ type record of Vendor VendorList; type record of Product ProductList; /** * * @desc Specifies the vendor specific monitor interface configration * @desc Example of module parameter based entry of EUT interface information for all products particpating in an interoperability event */ modulepar VendorList PX_VENDORS := { modulepar ProductList PX_PRODUCTS := { { name := "Testing Tech", productName := "Testing Tech IMS Core", monitorInterfaces := { { name := "Gm", interfaceName := "Gm", interface := { IpInterface := { { Loading @@ -101,7 +101,7 @@ module Interface_configuration { } }, { name := "Mw", interfaceName := "Mw", interface := { IpInterface := { { Loading @@ -120,14 +120,14 @@ module Interface_configuration { } }, { name := "ETSI", productName := "ETSI UE", monitorInterfaces := { { name := "Mw", interfaceName := "Gm", interface := { IpInterface := { { domainName := "scscf.etsi.org", domainName := omit, IpAddress := "127.0.0.1", portNumbers := {5060} } Loading @@ -140,17 +140,20 @@ module Interface_configuration { /** * * @desc Defines the EUT A configuration form the vendor list * @desc Selects product based on index in PX_PRODCUTS vendor list for EUT_A */ modulepar integer EUT_A := 0; modulepar integer PX_EUT_A := 0; /** * * @desc Definies the EUT B configration form the vendor list * @desc Selects product based on index in PX_PRODCUTS vendor list for EUT_B */ modulepar integer EUT_B := 1; modulepar integer PX_EUT_B := 1; // TODO functions for information extraction from EUT interface information list (in templates and configuration functions) // EXAMPLE: function f_getIPaddress( vendor, interface name) returns IPAddressList // TODO Investigate set of "ATS specific" functions for simplifying data entry to EUT interface information list } No newline at end of file