public override ITrackDownloadRequest 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 ); UTDownload utDownload = new UTDownload(this.EventParametersAccumulator); TrackDownloadParameters result = new TrackDownloadParameters(null, utDownload); return(result); }
public ITrackDownloadRequest FillTrackDownloadGaps(ITrackDownloadRequest userRequest) { var utDownload = userRequest.Download.DeepCopyUTDownload(); //order matters! IUTSessionConfig mergedSessionConfig = this.SessionConfigMerger.FillSessionConfigGaps(userRequest.SessionConfig); var utEvent = this.ApplyActiveInteraction(utDownload, mergedSessionConfig); utEvent = this.ApplyDeviceIdentifier(utEvent); utDownload = new UTDownload(utEvent); return(new TrackDownloadParameters(mergedSessionConfig, utDownload)); }