private void StartLookup() { DisplayStatusMessage = false; StatusMessage = string.Empty; IsLookupRunning = true; // Measure the time StartTime = DateTime.Now; stopwatch.Start(); dispatcherTimer.Tick += DispatcherTimer_Tick; dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 100); dispatcherTimer.Start(); EndTime = null; // Reset the latest results LookupResult.Clear(); AddHostToHistory(Host); DNSLookupOptions dnsLookupOptions = new DNSLookupOptions(); if (SettingsManager.Current.DNSLookup_UseCustomDNSServer) { dnsLookupOptions.UseCustomDNSServer = SettingsManager.Current.DNSLookup_UseCustomDNSServer; dnsLookupOptions.CustomDNSServers = SettingsManager.Current.DNSLookup_CustomDNSServer.Select(x => x.Trim()).ToList(); dnsLookupOptions.Port = SettingsManager.Current.DNSLookup_Port; } dnsLookupOptions.AddDNSSuffix = SettingsManager.Current.DNSLookup_AddDNSSuffix; if (SettingsManager.Current.DNSLookup_UseCustomDNSSuffix) { dnsLookupOptions.UseCustomDNSSuffix = true; dnsLookupOptions.CustomDNSSuffix = SettingsManager.Current.DNSLookup_CustomDNSSuffix.TrimStart('.'); } dnsLookupOptions.Class = SettingsManager.Current.DNSLookup_Class; dnsLookupOptions.Type = Type; dnsLookupOptions.Recursion = SettingsManager.Current.DNSLookup_Recursion; dnsLookupOptions.UseResolverCache = SettingsManager.Current.DNSLookup_UseResolverCache; dnsLookupOptions.TransportType = SettingsManager.Current.DNSLookup_TransportType; dnsLookupOptions.Attempts = SettingsManager.Current.DNSLookup_Attempts; dnsLookupOptions.Timeout = SettingsManager.Current.DNSLookup_Timeout; dnsLookupOptions.ResolveCNAME = SettingsManager.Current.DNSLookup_ResolveCNAME; DNSLookup DNSLookup = new DNSLookup(); DNSLookup.RecordReceived += DNSLookup_RecordReceived; DNSLookup.LookupError += DNSLookup_LookupError; DNSLookup.LookupComplete += DNSLookup_LookupComplete;; DNSLookup.LookupAsync(Host.Split(';').Select(x => x.Trim()).ToList(), dnsLookupOptions); }
private void StartLookup() { DisplayStatusMessage = false; StatusMessage = string.Empty; IsLookupRunning = true; // Measure the time StartTime = DateTime.Now; stopwatch.Start(); dispatcherTimer.Tick += DispatcherTimer_Tick; dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 100); dispatcherTimer.Start(); EndTime = null; // Reset the latest results LookupResult.Clear(); // Change the tab title (not nice, but it works) Window window = Application.Current.Windows.OfType <Window>().FirstOrDefault(x => x.IsActive); if (window != null) { foreach (TabablzControl tabablzControl in VisualTreeHelper.FindVisualChildren <TabablzControl>(window)) { tabablzControl.Items.OfType <DragablzTabItem>().First(x => x.ID == _tabId).Header = Host; } } AddHostToHistory(Host); DNSLookupOptions dnsLookupOptions = new DNSLookupOptions(); if (SettingsManager.Current.DNSLookup_UseCustomDNSServer) { dnsLookupOptions.UseCustomDNSServer = SettingsManager.Current.DNSLookup_UseCustomDNSServer; dnsLookupOptions.CustomDNSServers = SettingsManager.Current.DNSLookup_CustomDNSServer.Select(x => x.Trim()).ToList(); dnsLookupOptions.Port = SettingsManager.Current.DNSLookup_Port; } dnsLookupOptions.AddDNSSuffix = SettingsManager.Current.DNSLookup_AddDNSSuffix; if (SettingsManager.Current.DNSLookup_UseCustomDNSSuffix) { dnsLookupOptions.UseCustomDNSSuffix = true; dnsLookupOptions.CustomDNSSuffix = SettingsManager.Current.DNSLookup_CustomDNSSuffix.TrimStart('.'); } dnsLookupOptions.Class = SettingsManager.Current.DNSLookup_Class; dnsLookupOptions.Type = Type; dnsLookupOptions.Recursion = SettingsManager.Current.DNSLookup_Recursion; dnsLookupOptions.UseResolverCache = SettingsManager.Current.DNSLookup_UseResolverCache; dnsLookupOptions.TransportType = SettingsManager.Current.DNSLookup_TransportType; dnsLookupOptions.Attempts = SettingsManager.Current.DNSLookup_Attempts; dnsLookupOptions.Timeout = SettingsManager.Current.DNSLookup_Timeout; dnsLookupOptions.ResolveCNAME = SettingsManager.Current.DNSLookup_ResolveCNAME; DNSLookup DNSLookup = new DNSLookup(); DNSLookup.RecordReceived += DNSLookup_RecordReceived; DNSLookup.LookupError += DNSLookup_LookupError; DNSLookup.LookupComplete += DNSLookup_LookupComplete;; DNSLookup.LookupAsync(Host.Split(';').Select(x => x.Trim()).ToList(), dnsLookupOptions); }
private void StartLookup() { DisplayStatusMessage = false; IsLookupRunning = true; // Reset statistic DNSServerAndPort = string.Empty; Questions = 0; Answers = 0; Authorities = 0; Additionals = 0; MessageSize = 0; // Measure the time StartTime = DateTime.Now; stopwatch.Start(); dispatcherTimer.Tick += DispatcherTimer_Tick; dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 100); dispatcherTimer.Start(); EndTime = null; // Reset the latest results LookupResult.Clear(); HostHistory = new List <string>(HistoryListHelper.Modify(HostHistory, Host, SettingsManager.Current.Application_HistoryListEntries)); DNSLookupOptions DNSLookupOptions = new DNSLookupOptions(); if (SettingsManager.Current.DNSLookup_UseCustomDNSServer) { if (!string.IsNullOrEmpty(SettingsManager.Current.DNSLookup_CustomDNSServer)) { DNSLookupOptions.UseCustomDNSServer = SettingsManager.Current.DNSLookup_UseCustomDNSServer; DNSLookupOptions.CustomDNSServer = SettingsManager.Current.DNSLookup_CustomDNSServer; } else { StatusMessage = Application.Current.Resources["String_CustomDNSServerIsEmptyCheckYourSettingsUseWindowsOwnDNSServer"] as string; DisplayStatusMessage = true; } } DNSLookupOptions.Class = SettingsManager.Current.DNSLookup_Class; DNSLookupOptions.Type = Type; DNSLookupOptions.Recursion = SettingsManager.Current.DNSLookup_Recursion; DNSLookupOptions.UseResolverCache = SettingsManager.Current.DNSLookup_UseResolverCache; DNSLookupOptions.TransportType = SettingsManager.Current.DNSLookup_TransportType; DNSLookupOptions.Attempts = SettingsManager.Current.DNSLookup_Attempts; DNSLookupOptions.Timeout = SettingsManager.Current.DNSLookup_Timeout; DNSLookupOptions.ResolveCNAME = SettingsManager.Current.DNSLookup_ResolveCNAME; DNSLookup DNSLookup = new DNSLookup(); DNSLookup.RecordReceived += DNSLookup_RecordReceived; DNSLookup.LookupError += DNSLookup_LookupError; DNSLookup.LookupComplete += DNSLookup_LookupComplete; string hostnameOrIPAddress = Host; string dnsSuffix = string.Empty; // Detect hostname (usually they don't contain ".") if (Host.IndexOf(".", StringComparison.OrdinalIgnoreCase) == -1) { if (SettingsManager.Current.DNSLookup_AddDNSSuffix) { if (SettingsManager.Current.DNSLookup_UseCustomDNSSuffix) { dnsSuffix = SettingsManager.Current.DNSLookup_CustomDNSSuffix; } else { dnsSuffix = IPGlobalProperties.GetIPGlobalProperties().DomainName; } } } // Append dns suffix to hostname if (!string.IsNullOrEmpty(dnsSuffix)) { hostnameOrIPAddress += string.Format("{0}{1}", dnsSuffix.StartsWith(".") ? "" : ".", dnsSuffix); } DNSLookup.LookupAsync(hostnameOrIPAddress, DNSLookupOptions); }
/// <summary> /// Lookup DNS records for a domain /// </summary> /// <exception cref="mailslurp.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="dNSLookupOptions"></param> /// <returns>Task of ApiResponse (DNSLookupResults)</returns> public async System.Threading.Tasks.Task <mailslurp.Client.ApiResponse <DNSLookupResults> > GetDnsLookupAsyncWithHttpInfo(DNSLookupOptions dNSLookupOptions) { // verify the required parameter 'dNSLookupOptions' is set if (dNSLookupOptions == null) { throw new mailslurp.Client.ApiException(400, "Missing required parameter 'dNSLookupOptions' when calling MailServerControllerApi->GetDnsLookup"); } mailslurp.Client.RequestOptions localVarRequestOptions = new mailslurp.Client.RequestOptions(); String[] _contentTypes = new String[] { "application/json" }; // to determine the Accept header String[] _accepts = new String[] { "*/*" }; foreach (var _contentType in _contentTypes) { localVarRequestOptions.HeaderParameters.Add("Content-Type", _contentType); } foreach (var _accept in _accepts) { localVarRequestOptions.HeaderParameters.Add("Accept", _accept); } localVarRequestOptions.Data = dNSLookupOptions; // authentication (API_KEY) required if (!String.IsNullOrEmpty(this.Configuration.GetApiKeyWithPrefix("x-api-key"))) { localVarRequestOptions.HeaderParameters.Add("x-api-key", this.Configuration.GetApiKeyWithPrefix("x-api-key")); } // make the HTTP request var localVarResponse = await this.AsynchronousClient.PostAsync <DNSLookupResults>("/mail-server/describe/dns-lookup", localVarRequestOptions, this.Configuration); if (this.ExceptionFactory != null) { Exception _exception = this.ExceptionFactory("GetDnsLookup", localVarResponse); if (_exception != null) { throw _exception; } } return(localVarResponse); }
/// <summary> /// Lookup DNS records for a domain /// </summary> /// <exception cref="mailslurp.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="dNSLookupOptions"></param> /// <returns>Task of DNSLookupResults</returns> public async System.Threading.Tasks.Task <DNSLookupResults> GetDnsLookupAsync(DNSLookupOptions dNSLookupOptions) { mailslurp.Client.ApiResponse <DNSLookupResults> localVarResponse = await GetDnsLookupAsyncWithHttpInfo(dNSLookupOptions); return(localVarResponse.Data); }
/// <summary> /// Lookup DNS records for a domain /// </summary> /// <exception cref="mailslurp.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="dNSLookupOptions"></param> /// <returns>DNSLookupResults</returns> public DNSLookupResults GetDnsLookup(DNSLookupOptions dNSLookupOptions) { mailslurp.Client.ApiResponse <DNSLookupResults> localVarResponse = GetDnsLookupWithHttpInfo(dNSLookupOptions); return(localVarResponse.Data); }