Commit f61eb810 authored by poglitsch's avatar poglitsch
Browse files

improved version

parent 6128b480
Loading
Loading
Loading
Loading
+139 −112
Original line number Diff line number Diff line
module Interface_configuration {
	
	type charstring IP_address;
	type integer Port_number;
 
	type record IP_interface {
	   IP_address IpAddress,
	   set of Port_number portNumber	
	}
 
	type set of IP_interface IpInterfaceList;
 
	/**
	 * 
	 * @desc IP address type e.g. "127.0.0.1" 
	 */
	type charstring IpAddress;
	
	/**
	 * 
	 * @desc Port number type e.g. "5060" 
	 */
	type integer PortNumber;
	
	/**
	 * 
	 * @desc List of port numbers 
	 */
	type record of PortNumber PortNumberList;
 	
 	/**
 	 * 
 	 * @desc IP interface type
 	 * @member domainName the domain name
 	 * @member IpAddress the ip address
 	 * @member portNumbers the list of port numbers
 	 */
	type record IpInterface {
	   charstring domainName,
	   IpAddress IpAddress,
	   PortNumberList portNumbers	
	}
 	
 	/**
 	 * 
 	 * @desc List of IP interfaeces
 	 */
	type record of IpInterface IpInterfaceList;
 	
 	/**
 	 * 
 	 * @desc Interface tpye e.g for IP communications 
 	 */
	type union Interface {
	   IpInterfaceList IpInterface
	}
	
	type record Vendor {
	/**
	 * 
	 * @desc Monitor interface for analyzing 
	 * @member name the interface name
	 * @member interface the interface definition
	 */ 
	type record MonitorInterface {
	   charstring name,
	   Interface interface	
	}
	
	/**
	 * 
	 * @desc List of monitor interfaces 
	 */
	type record of MonitorInterface MonitorInterfaceList;
 
	type record ReferencePoint {
 	/**
 	 * 
 	 * @desc Vendor specific configuration 
 	 * @member name the name of the vendor
 	 * @member monitorInterfaces monitor interface configuration
 	 */
	type record Vendor {
	   charstring name,
	   set of Vendor vendor	
	   MonitorInterfaceList monitorInterfaces
	}
	
	type set of ReferencePoint ReferencePointList;
	/**
	 * 
	 * @desc List of Vendor configurations
	 */
	type record of Vendor VendorList;
	
	
	modulepar ReferencePointList refPoint := {
	/**
	 * 
	 * @desc Specifies the vendor specific monitor interface configration
	 */
	modulepar VendorList PX_VENDORS := {
		{
		   name := "Gm",
		   vendor := {
			name := "Testing Tech",
			monitorInterfaces := {
				{
				   name := "A", // is this related to the vendor????
					name := "Gm",
					interface := {
						IpInterface := {
							{
								/* Conf of UE ???*/
							   IpAddress := "127.0.0.1",
							   portNumber := {
								   5060	
							   }
						   },
						   {
								/* Conf of IMS (P-CSCF) ???*/
								domainName := "pcscf.testingtech.com",
								IpAddress := "127.0.0.1",
							   portNumber := {
								   5061	
							   }
						   }	
					   }	
				   }
			   },
			   {
				   name := "B",
				   interface := {
					   IpInterface := {
						   {
							   IpAddress := "127.0.0.2",
							   portNumber := {
								   5060	
							   }
						   },
						   {
							   IpAddress := "127.0.0.2",
							   portNumber := {
								   5061	
							   }
						   }	
					   }	
								portNumbers := {5060, 5061}
							}
						}
					}
				},
				{
					name := "Mw",
			vendor := {
				{
					name := "A",
					interface := {
						IpInterface := {
							{
								domainName := "icscf.testingtech.com",
								IpAddress := "127.0.0.1",
								portNumber := {
									5062	
								}
								portNumbers := {5080}
							},
							{
								domainName := "scscf.testingtech.com",
								IpAddress := "127.0.0.1",
								portNumber := {
									5063	
								portNumbers := {5090}
							}
						}
					}
				}
			}
		},
		{
					name := "B",
			name := "ETSI",
			monitorInterfaces := {
				{
					name := "Mw",
					interface := {
						IpInterface := {
							{
								IpAddress := "127.0.0.2",
								portNumber := {
									5062	
								}
							},
							{
								IpAddress := "127.0.0.2",
								portNumber := {
									5063	
								domainName := "scscf.etsi.org",
								IpAddress := "127.0.0.1",
								portNumbers := {5060}
							}
						}
					}
@@ -118,10 +138,17 @@ module Interface_configuration {
		}
	}
 	
	};
 	/**
 	 * 
 	 * @desc Defines the EUT A configuration form the vendor list 
 	 */
	modulepar integer EUT_A := 0;
	
	modulepar integer vendorA := 0;
	modulepar integer vendorB := 1;
	/**
	 * 
	 * @desc Definies the EUT B configration form the vendor list 
	 */
	modulepar integer EUT_B := 1;