Exemple #1
0
        private void GetBuilders()
        {
            MarketShareDataSource mds = DroneDataSource as MarketShareDataSource;

            if (!Object.Equals(null, mds))
            {
                int maxParallel = XMLUtility.GetTextFromAccountNode(Xml, ProcessorName + "/maxparallel").ConvertStringToInt(1);

                Parallel.ForEach(mds.GetAllCompanies(MarketShareTypeBitMaskEnum.SiteBuilder, XMLUtility.GetIntFromAccountNode(Xml, ProcessorName + "/recordcount"))
                                 , new ParallelOptions {
                    MaxDegreeOfParallelism = maxParallel
                }
                                 , (company, state) =>
                {
                    try
                    {
                        if (Context.ShuttingDown)
                        {
                            state.Break();
                        }

                        MarketShareDataType marketDataType = new MarketShareDataType();
                        string url = Utility.CleanUrl(company.Uri.ToString());
                        WriteToUsageLogFile("Domain:" + url, string.Format("Executing {0}.{1}", ComponentTypeName, MethodInfo.GetCurrentMethod().Name), true);

                        if (!String.IsNullOrWhiteSpace(url))
                        {
                            marketDataType.Value      = MarketShareEngine.Instance.SiteBuilder(url);
                            marketDataType.DomainId   = company.DomainId;
                            marketDataType.SampleDate = company.DomainAttributes["SampleDate"];
                            marketDataType.TypeId     = (int)MarketShareDataTypeEnum.SiteBuilder;
                            marketDataType.BitMaskId  = (int)MarketShareTypeBitMaskEnum.SiteBuilder;
                            marketDataType.UniqueID   = g;

                            if (!string.IsNullOrWhiteSpace(marketDataType.Value))
                            {
                                MarketShareDataComponent dc = new MarketShareDataComponent();
                                dc.MarketShareType          = marketDataType;
                                DroneDataSource.Process(dc);
                            }
                            else
                            {
                                Utility.WriteToLogFile(String.Format("SmallBiz_NoBuilder_{0:M_d_yyyy}", DateTime.Today) + ".log", string.Format("Domain: ,{0}", url));
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        ExceptionExtensions.LogError(e, "MarketShareBuilder.GetBuilders", "Domain: " + company.Uri.ToString());
                    }
                });
            }
        }
Exemple #2
0
        /// <summary>
        /// Gets registrars for all companies in our database
        /// </summary>
        internal void GetAllEmailHosts()
        {
            MarketShareDataSource mds = DroneDataSource as MarketShareDataSource;

            if (!Object.Equals(null, mds))
            {
                using (Dig dig = new Dig())
                {
                    var list = mds.GetAllCompanies(MarketShareTypeBitMaskEnum.EmailHost, XMLUtility.GetIntFromAccountNode(Xml, "emailhost/recordcount"));

                    foreach (var company in list)
                    {
                        try
                        {
                            MarketShareDataType marketType = new MarketShareDataType();
                            string url = Utility.CleanUrl(company.Uri.ToString());

                            if (!String.IsNullOrWhiteSpace(url))
                            {
                                WriteToUsageLogFile("Domain:" + url, string.Format("Executing {0}.{1}", ComponentTypeName, MethodInfo.GetCurrentMethod().Name), true);

                                marketType.Value      = dig.GetEmailHostName(url);
                                marketType.DomainId   = company.DomainId;
                                marketType.SampleDate = company.DomainAttributes["SampleDate"];
                                marketType.TypeId     = (int)MarketShareDataTypeEnum.EmailHost;
                                marketType.BitMaskId  = (int)MarketShareTypeBitMaskEnum.EmailHost;

                                if (!string.IsNullOrWhiteSpace(marketType.Value))
                                {
                                    MarketShareDataComponent dc = new MarketShareDataComponent();
                                    dc.MarketShareType = marketType;
                                    DroneDataSource.Process(dc);
                                }
                                else
                                {
                                    Utility.WriteToLogFile(String.Format("SmallBiz_NoEmailHost_{0:M_d_yyyy}", DateTime.Today) + ".log", string.Format("Domain: ,{0}", url));
                                }
                            }
                        }
                        catch (Exception e)
                        {
                            ExceptionExtensions.LogError(e, "EmailHost.GetAllEmailHosts", "Domain: " + company.Uri.ToString());
                        }
                    }
                }
            }
        }