private void btn_startExchangeGeneration_Click(object sender, EventArgs e) { if (!ExchangeGenWrapper.DoNotShowExchangePrerequisites) { var prerequisitesForm = new ExchangePrerequisites(); prerequisitesForm.Show(); } var messageSize = _mailSizeDictionary.FirstOrDefault(x => x.Value == cb_MailSize.SelectedItem.ToString()).Key; // Start Exchange Generation for selected servers with specific parameters if (cb_ExchangeUseCustomCreds.Checked) { ExchangeGenWrapper.StartExchangeGenerator(lv_ExchangeServers, ServerWrapper.ExchangeServersList, messageSize, tb_exchangeCustomUsername.Text, tb_exchangeCustomDomain.Text, tb_exchangeCustomPassword.Text); } else { ExchangeGenWrapper.StartExchangeGenerator(lv_ExchangeServers, ServerWrapper.ExchangeServersList, messageSize); } // Update ListView ServerWrapper.UpdateExchangeListView(lv_ExchangeServers, lbl_exchangeGenerationRunningValue); var exchangeParmsToSerialize = new ExchangeGeneratorParameters() { MessageSize = messageSize }; exchangeParmsToSerialize.SerizalizeExchangeParamsToFile(); }
public ExchangeServer(string ip, string displayname, string repository, string username, string domain, string password) : base(ip, displayname, repository, username, password) { ServerCredentials.Domain = domain; if (ExchangeGenParameters == null) ExchangeGenParameters = new ExchangeGeneratorParameters(); ExchangeGenParameters.Recipient = username + '@' + domain; }
public ExchangeServer(string ip, string displayname, string repository, string username, string domain, string password) : base(ip, displayname, repository, username, password) { ServerCredentials.Domain = domain; if (ExchangeGenParameters == null) { ExchangeGenParameters = new ExchangeGeneratorParameters(); } ExchangeGenParameters.Recipient = username + '@' + domain; }
private static void SendMessages(ExchangeService service, ExchangeGeneratorParameters genParameters, ServerConnectionCredentials serverCreds, Random random1) { var email = new EmailMessage(service); email.ToRecipients.Add(genParameters.Recipient); email.Body = new MessageBody(HelperMethods.RandomString((int)genParameters.MessageSize,random1)); email.Subject = "Exchange Generator (" + genParameters.MessageSize+")"; var serviceRequestRetryCount = 0; var serviceResponseRetryCount = 0; while (true) { try { email.Send(); break; } catch (ServiceRequestException e) { if (serviceRequestRetryCount < 3) { serviceRequestRetryCount++; Logger.Log("ServiceRequestException has been caught, retry in 15 seconds.", Logger.LogLevel.Warning, serverCreds.Ip); Thread.Sleep(15000); } else { Logger.LogError("Something wrong with exchange server.", serverCreds.Ip, e); throw; } } catch (ServiceResponseException e) { if (serviceResponseRetryCount < 3) { serviceResponseRetryCount++; Logger.Log("ServiceResponseException has been caught, retry in 15 seconds.", Logger.LogLevel.Warning, serverCreds.Ip); Thread.Sleep(15000); } else { Logger.LogError("Something wrong with exchange server.", serverCreds.Ip, e); throw; } } } }
private static void SendMessages(ExchangeService service, ExchangeGeneratorParameters genParameters, ServerConnectionCredentials serverCreds, Random random1) { var email = new EmailMessage(service); email.ToRecipients.Add(genParameters.Recipient); email.Body = new MessageBody(HelperMethods.RandomString((int)genParameters.MessageSize, random1)); email.Subject = "Exchange Generator (" + genParameters.MessageSize + ")"; var serviceRequestRetryCount = 0; var serviceResponseRetryCount = 0; while (true) { try { email.Send(); break; } catch (ServiceRequestException e) { if (serviceRequestRetryCount < 3) { serviceRequestRetryCount++; Logger.Log("ServiceRequestException has been caught, retry in 15 seconds.", Logger.LogLevel.Warning, serverCreds.Ip); Thread.Sleep(15000); } else { Logger.LogError("Something wrong with exchange server.", serverCreds.Ip, e); throw; } } catch (ServiceResponseException e) { if (serviceResponseRetryCount < 3) { serviceResponseRetryCount++; Logger.Log("ServiceResponseException has been caught, retry in 15 seconds.", Logger.LogLevel.Warning, serverCreds.Ip); Thread.Sleep(15000); } else { Logger.LogError("Something wrong with exchange server.", serverCreds.Ip, e); throw; } } } }
public static void StartGenerator(ServerConnectionCredentials serverCredentials, ExchangeGeneratorParameters genParameters, CancellationToken token) { ServicePointManager.ServerCertificateValidationCallback = OnValidationCallback; var service = new ExchangeService(ExchangeVersion.Exchange2007_SP1) { Credentials = new WebCredentials(serverCredentials.Username, serverCredentials.Password), Url = new Uri("https://" + serverCredentials.Ip + "/EWS/Exchange.asmx"), Timeout = 300000 }; Logger.Log("Exchange data generation started for server: " + serverCredentials.Ip + " . With mail size: " + genParameters.MessageSize, Logger.LogLevel.Info, serverCredentials.Ip); _random = new Random(); while (true) { SendMessages(service, genParameters, serverCredentials, _random); if (token.IsCancellationRequested) break; } }
private void GetGenParamsFromFileToGui() { var ddtParams = DdtParameters.DeserializeDdtParamsFromFile(); if (ddtParams != null) { tb_Size.Text = ddtParams.Filesize.ToString(); tb_Compression.Text = ddtParams.Compression.ToString(); tb_Path.Text = ddtParams.Filepath; tb_Interval.Text = ddtParams.Interval.ToString(); } var exchangeParams = ExchangeGeneratorParameters.DeserializeExchangeParamsFromFile(); if (exchangeParams != null) { var i = 0; foreach (var item in cb_MailSize.Items) { if ((item.ToString()).Contains(_mailSizeDictionary[exchangeParams.MessageSize])) { cb_MailSize.SelectedIndex = i; } i++; } } var sqlParams = SqlGeneratorParameters.DeserializeSqlParamsFromFile(); if (sqlParams == null) { return; } tb_dbName.Text = sqlParams.DbName; tb_SQLAmountRows.Text = sqlParams.RowsToInsert.ToString(); }
public static void StartGenerator(ServerConnectionCredentials serverCredentials, ExchangeGeneratorParameters genParameters, CancellationToken token) { ServicePointManager.ServerCertificateValidationCallback = OnValidationCallback; var service = new ExchangeService(ExchangeVersion.Exchange2007_SP1) { Credentials = new WebCredentials(serverCredentials.Username, serverCredentials.Password), Url = new Uri("https://" + serverCredentials.Ip + "/EWS/Exchange.asmx"), Timeout = 300000 }; Logger.Log("Exchange data generation started for server: " + serverCredentials.Ip + " . With mail size: " + genParameters.MessageSize, Logger.LogLevel.Info, serverCredentials.Ip); _random = new Random(); while (true) { SendMessages(service, genParameters, serverCredentials, _random); if (token.IsCancellationRequested) { break; } } }
private void btn_startExchangeGeneration_Click(object sender, EventArgs e) { if (!ExchangeGenWrapper.DoNotShowExchangePrerequisites) { var prerequisitesForm = new ExchangePrerequisites(); prerequisitesForm.Show(); } var messageSize = _mailSizeDictionary.FirstOrDefault(x => x.Value == cb_MailSize.SelectedItem.ToString()).Key; // Start Exchange Generation for selected servers with specific parameters if (cb_ExchangeUseCustomCreds.Checked) { ExchangeGenWrapper.StartExchangeGenerator(lv_ExchangeServers, ServerWrapper.ExchangeServersList, messageSize, tb_exchangeCustomUsername.Text, tb_exchangeCustomDomain.Text, tb_exchangeCustomPassword.Text); } else { ExchangeGenWrapper.StartExchangeGenerator(lv_ExchangeServers, ServerWrapper.ExchangeServersList, messageSize); } // Update ListView ServerWrapper.UpdateExchangeListView(lv_ExchangeServers, lbl_exchangeGenerationRunningValue); var exchangeParmsToSerialize = new ExchangeGeneratorParameters() {MessageSize = messageSize}; exchangeParmsToSerialize.SerizalizeExchangeParamsToFile(); }