コード例 #1
0
ファイル: DDTWrapper.cs プロジェクト: abezzubets/DDTGenerator
        // This method used to initiate start of DDT on remote machine
        public static void StartDdt(ListView listview, List<Server> serversList, DdtParameters ddtparameters)
        {
            var selectedServers = listview.Items.Cast<ListViewItem>().Where(item => item.Checked).ToList(); // Creating list of selected servers

            foreach (var server in selectedServers)
            {
                for (var y = 0; y < serversList.Count; y++)
                {
                    if (server.SubItems[1].Text != serversList[y].ServerCredentials.Ip) continue;
                    var index = y;

                    if (serversList[y].Task != null)
                    {
                        serversList[y].Cts.Cancel();
                    }

                    serversList[y].ServerGeneratorStatus = Server.GeneratorStatus.Running;
                    serversList[y].Cts = new CancellationTokenSource();
                    serversList[y].DdtParameters = ddtparameters;

                    serversList[y].Task = new Task(() => serversList[index].Runddt());
                    serversList[y].Task.Start();
                }
            }
        }
コード例 #2
0
ファイル: DDTWrapper.cs プロジェクト: abezzubets/DDTGenerator
        public static void StartDdt(ListView listview, List<Server> serversList, DdtParameters ddtparameters, string username, string password)
        {
            var selectedServers = listview.Items.Cast<ListViewItem>().Where(item => item.Checked).ToList(); // Creating list of selected servers

            foreach (var server in selectedServers)
            {
                foreach (var t in serversList)
                {
                    if (server.SubItems[1].Text != t.ServerCredentials.Ip) continue;

                    t.ServerCredentials.Username = username;
                    t.ServerCredentials.Password = password;
                }
            }

            StartDdt(listview,serversList,ddtparameters);
        }
コード例 #3
0
ファイル: Form1.cs プロジェクト: abezzubets/DDTGenerator
        private void btn_startDDT_Click(object sender, EventArgs e)
        {
            var failedValidation = false;
            var textBoxValidate = new List<TextBox> {tb_Size, tb_Path, tb_Compression, tb_Interval};

            foreach (var textBox in textBoxValidate)
            {
                if (!string.IsNullOrWhiteSpace(textBox.Text)) continue;
                errorProvider1.SetError(textBox,"Field cannot be empty");
                failedValidation = true;
            }

            if (failedValidation)
                return;

            _ddtParameters = new DdtParameters()
            {
                Filesize = Convert.ToInt32(tb_Size.Text),
                Compression = Convert.ToInt32(tb_Compression.Text),
                Interval = Convert.ToInt32(tb_Interval.Text),
                Filepath = tb_Path.Text,
                FillingGeneration = cb_fillingGeneration.Checked
            };

            _ddtParameters.SerizalizeDdtParamsToFile();

            // Start DDT for selected servers with specific parameters
            if (cb_UseCustomCredentials.Checked)
            {
                DdtWrapper.StartDdt(lv_AgentsList, ServerWrapper.ServersList, _ddtParameters, tb_customUsername.Text, tb_customPassword.Text);
            }
            else
            {
                DdtWrapper.StartDdt(lv_AgentsList, ServerWrapper.ServersList, _ddtParameters);
            }

            // Update ListView
            ServerWrapper.UpdateListView(lv_AgentsList, lbl_ChangeRateValue, lbl_totalAgentsRunningValue);
        }