Пример #1
0
        public override ITrackSearchRequest Build()
        {
            this.CheckWholeObjectForCorrectnessOrThrow();

            Dictionary <string, string> customParameters = null;

            if (this.FieldsRawValuesByName != null)
            {
                customParameters = new Dictionary <string, string>(this.FieldsRawValuesByName);
            }

            this.EventParametersAccumulator = new UTEvent(
                this.EventParametersAccumulator.Timestamp,
                customParameters,
                this.EventParametersAccumulator.DefinitionId,
                this.EventParametersAccumulator.ItemId,
                this.EventParametersAccumulator.EngagementValue,
                this.EventParametersAccumulator.ParentEventId,
                this.EventParametersAccumulator.Text,
                this.EventParametersAccumulator.Duration,
                this.EventParametersAccumulator.TrackingInteractionId
                );

            UTSearch utSearch = new UTSearch(
                this.EventParametersAccumulator,
                this.Keywords
                );

            TrackSearchParameters result = new TrackSearchParameters(null, utSearch);

            return(result);
        }
Пример #2
0
        public override IUTSearch Build()
        {
            Dictionary <string, string> customParameters = null;

            if (this.FieldsRawValuesByName != null)
            {
                customParameters = new Dictionary <string, string>(this.FieldsRawValuesByName);
            }

            this.EventParametersAccumulator = new UTEvent(
                this.EventParametersAccumulator.Timestamp,
                customParameters,
                this.EventParametersAccumulator.DefinitionId,
                this.EventParametersAccumulator.ItemId,
                this.EventParametersAccumulator.EngagementValue,
                this.EventParametersAccumulator.ParentEventId,
                this.EventParametersAccumulator.Text,
                this.EventParametersAccumulator.Duration,
                this.EventParametersAccumulator.TrackingInteractionId
                );

            var result = new UTSearch(this.EventParametersAccumulator, this.Keywords);

            return(result);
        }
        public ITrackSearchRequest FillTrackSearchGaps(ITrackSearchRequest userRequest)
        {
            var utSearch = userRequest.SearchEvent.DeepCopyUTSearch();

            //order matters!
            IUTSessionConfig mergedSessionConfig = this.SessionConfigMerger.FillSessionConfigGaps(userRequest.SessionConfig);

            var utEvent = this.ApplyActiveInteraction(utSearch, mergedSessionConfig);

            utEvent = this.ApplyDeviceIdentifier(utEvent);

            utSearch = new UTSearch(utEvent, utSearch.Keywords);

            return(new TrackSearchParameters(mergedSessionConfig, utSearch));
        }