コード例 #1
0
        protected override void OnProcess(Sitecore.Analytics.Aggregation.Pipeline.AggregationPipelineArgs args)
        {
            Sitecore.Diagnostics.Assert.ArgumentNotNull((object)args, "args");

            Browsers     fact       = args.GetFact <Browsers>();
            BrowserMajor dimension1 = args.GetDimension <BrowserMajor>();
            BrowserMinor dimension2 = args.GetDimension <BrowserMinor>();
            SiteNames    dimension3 = args.GetDimension <SiteNames>();

            var visit       = args.Context.Visit;
            var browserData = visit.Browser;
            int value       = visit.Value;

            Hash32 hash32_1 = dimension1.Add(browserData.BrowserMajorName ?? "[Unknown]");
            Hash32 hash32_2 = dimension2.Add(hash32_1, browserData.BrowserMinorName ?? "[Unknown]");
            Hash32 hash32_3 = dimension3.Add(visit.SiteName ?? "[Unknown]");

            args.GetFact <Browsers>().Emit(
                new BrowsersKey()
            {
                Date           = args.DateTimeStrategy.Translate(visit.StartDateTime),
                BrowserMajorId = hash32_1,
                BrowserMinorId = hash32_2,
                SiteNameId     = hash32_3,
                Checksum       = Hash32.Compute((object)hash32_1, (object)hash32_2, (object)hash32_3)
            },
                new BrowsersValue()
            {
                Value  = value,
                Visits = 1
            });
        }
コード例 #2
0
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="independetnLines">不能用net,net不允许重复基线</param>
        /// <param name="FixedSiteNames"></param>
        public SiteFixedBaselineNetMatrixBuilder(List <EstimatedBaseline> independetnLines, List <string> totalSites, List <string> FixedSiteNames)
        {
            this.IndependentLines = independetnLines;

            this.SiteNames = totalSites;

            if (FixedSiteNames == null)
            {
                FixedSiteNames = new List <string>();
            }

            if (FixedSiteNames.Count == 0)
            {
                FixedSiteNames.Add(SiteNames.First());
            }
            this.FixedSiteNames = FixedSiteNames;
            this.ParamNames     = new List <string>();
            foreach (var item in this.SiteNames)
            {
                ParamNames.Add(item + "_" + Gnsser.ParamNames.Dx);
                ParamNames.Add(item + "_" + Gnsser.ParamNames.Dy);
                ParamNames.Add(item + "_" + Gnsser.ParamNames.Dz);
            }
        }
コード例 #3
0
        /// <summary>
        /// In this method we receive data that was defined in B2B_app application and required for websites and web service investigation
        /// </summary>
        public void GetDataFromUser()
        {
            string        data     = RemoteSave.GetContentFromFtp("conf", RemoteSave.State.INTERMEDIATE);
            var           strArr   = data.Split(Environment.NewLine.ToCharArray());
            List <string> condData = strArr.Where(s => !String.IsNullOrEmpty(s)).ToList();
            var           temp     = condData[0];
            var           temp2    = temp.Split(';');

            foreach (string s in temp2.Where(s => !String.IsNullOrEmpty(s)))
            {
                SiteNames.Add(s);
            }
            temp  = condData[1];
            temp2 = temp.Split(';');
            bool flag;

            foreach (string s in temp2)
            {
                if (!String.IsNullOrEmpty(s))
                {
                    var   temp3 = s.Split('-');
                    Route route = new Route();
                    flag = true;
                    foreach (string s1 in temp3.Where(s1 => !String.IsNullOrEmpty(s1)))
                    {
                        if (flag)
                        {
                            route.Departure = s1;
                            flag            = false;
                        }
                        else
                        {
                            if (s1 != '-'.ToString())
                            {
                                route.Arrival = s1;
                            }
                        }
                    }
                    FlightLegs.Add(route);
                }
            }
            temp  = condData[2];
            temp2 = temp.Split(';');
            flag  = true;
            foreach (string s in temp2)
            {
                if (!String.IsNullOrEmpty(s))
                {
                    if (flag)
                    {
                        // 2016-07-20T15:00:00Z
                        DepartureDate = s;
                        flag          = false;
                    }
                    else
                    {
                        if (s != ';'.ToString())
                        {
                            ArrivalDate = s;
                        }
                    }
                }
            }
            temp           = condData[3];
            temp2          = temp.Split(';');
            ConfigFilePath = temp2[0];
            Config         = new CommonConfig();
            Config         = _configuration.GetConfiguration(ConfigFilePath);
            foreach (string siteName in SiteNames)
            {
                WebsiteDomList.Add(RemoteSave.GetContentFromFtp(siteName, RemoteSave.State.TEMPLATE));
            }
            TemplateConfigModel template = new TemplateConfigModel();

            foreach (string s in SiteNames)
            {
                WebsiteTemplates.Add(template.GetConfiguration(s));
            }
        }