/// <summary> /// Add network button interaction. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void AddNetworkButton_Click(object sender, RoutedEventArgs e) { try { var network = new RadioNetworkModel() { NetworkName = AddNameBox.Text, NetworkType = AddTypeComboBox.Text, Parameters = new NetworkParameters() { ThroughputInMbps = double.Parse(AddThroughoutputBox.Text), PacketLossPercentage = double.Parse(AddPacketLossBox.Text), ResponseTimeInMsec = double.Parse(AddResponseBox.Text), SecurityLevel = double.Parse(AddSecurityBox.Text) // TODO: Add security level based on network type } }; MainWindow.NetworksList.Add(network); Logger.Logger.AddMessage($"Successfully added network {AddNameBox.Text}", MessageThreshold.SUCCESS); } catch (Exception exception) { Logger.Logger.AddMessage("Error occurred while trying to add network: " + $"{exception.Message}", MessageThreshold.FAIL); } }
/// <summary> /// Parses CSV file line to Network Model. /// </summary> /// <param name="line"> /// Single line. /// </param> /// <returns> /// The Radio Network model. /// </returns> private static RadioNetworkModel ParseCsvLineForNetworkModel(string line) { string[] networkElements = line.Split(','); var radioNetworkModel = new RadioNetworkModel() { NetworkName = networkElements[0], NetworkType = networkElements[1], Parameters = new NetworkParameters() { ThroughputInMbps = double.Parse(networkElements[2], CultureInfo.InvariantCulture), PacketLossPercentage = double.Parse(networkElements[3], CultureInfo.InvariantCulture), ResponseTimeInMsec = double.Parse(networkElements[4], CultureInfo.InvariantCulture), SecurityLevel = double.Parse(networkElements[5], CultureInfo.InvariantCulture), } }; return(radioNetworkModel); }