public GoalRecordAppInstall(IReadOnlyDictionary <string, int> columnMetadata, IList <object> row) { if (_goalIdOrdinal == -1) { _goalIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalId"); } if (_appStoreIdOrdinal == -1) { _appStoreIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "AppStoreId"); } if (_appPlatformOrdinal == -1) { _appPlatformOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "AppPlatform"); } if (_lookbackWindowOrdinal == -1) { _lookbackWindowOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "LookbackWindow"); } if (_goalValueOrdinal == -1) { _goalValueOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalValue"); } if (_AccountIdOrdinal == -1) { _AccountIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "AccountId"); } if (_goalTrackingType == -1) { _goalTrackingType = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalTrackingType"); } if (_goalValueSourceIdOrdinal == -1) { _goalValueSourceIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalValueSourceId"); } if (_customerIdOrdinal == -1) { _customerIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "CustomerId"); } GoalId = (int)row[_goalIdOrdinal]; AppStoreId = (string)row[_appStoreIdOrdinal]; AppPlatform = (string)row[_appPlatformOrdinal]; LookbackWindow = (int)row[_lookbackWindowOrdinal]; GoalValue = (double?)row[_goalValueOrdinal]; AccountId = (int?)row[_AccountIdOrdinal]; GoalTrackingType = (short)row[_goalTrackingType]; GoalValueSourceId = (short)row[_goalValueSourceIdOrdinal]; CustomerId = (int)row[_customerIdOrdinal]; }
/// <summary> /// Constructor /// </summary> /// <param name="columnMetadata"> Column name to column index mapping. </param> /// <param name="row"></param> protected TagToGoalRecord(IReadOnlyDictionary <string, int> columnMetadata, IList <object> row) { if (_tagIdOrdinal == -1) { _tagIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "TagId"); } if (_goalIdOrdinal == -1) { _goalIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalId"); } if (_lookbackWindowOrdinal == -1) { _lookbackWindowOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "LookbackWindow"); } if (_goalValue == -1) { _goalValue = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalValue"); } if (_goalTrackingType == -1) { _goalTrackingType = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalTrackingType"); } if (_accountIdOrdinal == -1) { _accountIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "AccountId"); } if (_goalValueSourceIdOrdinal == -1) { _goalValueSourceIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "GoalValueSourceId"); } TagId = (int)row[_tagIdOrdinal]; GoalId = (int)row[_goalIdOrdinal]; LookbackWindow = (int)row[_lookbackWindowOrdinal]; GoalValue = (double?)row[_goalValue]; GoalTrackingType = (short)row[_goalTrackingType]; AccountId = (int?)row[_accountIdOrdinal]; GoalValueSourceId = (short)row[_goalValueSourceIdOrdinal]; }
public TagToCustomerRecord(IReadOnlyDictionary <string, int> columnMetadata, IList <object> row) { if (_tagIdOrdinal == -1) { _tagIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "TagId"); } if (_customerIdOrdinal == -1) { _customerIdOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "CustomerId"); } if (_tagNameOrdinal == -1) { _tagNameOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "TagName"); } TagId = (int)row[_tagIdOrdinal]; CustomerId = (int)row[_customerIdOrdinal]; TagName = (string)row[_tagNameOrdinal]; }
public TagToGoalRecordDestinationUrl(IReadOnlyDictionary <string, int> columnMetadata, IList <object> row) : base(columnMetadata, row) { GoalType = GoalType.DestinationUrl; if (_destinationUrlOrdinal == -1) { _destinationUrlOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "DestinationURL"); } if (_comparisonOperatorOrdinal == -1) { _comparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "DestinationURLOperator"); } var destinationUrl = (string)row[_destinationUrlOrdinal]; var comparisonOperatorByte = (byte)row[_comparisonOperatorOrdinal]; if (!GoalUtils.IsValidComparisonOperator(comparisonOperatorByte)) { throw new Exception(String.Format("DestinationUrl comparison operator value {0} is outside of range.", comparisonOperatorByte)); } var comparisonOperator = (GoalComparisonOperator)comparisonOperatorByte; if (!GoalUtils.IsValidStringOperator(comparisonOperator)) { throw new Exception(String.Format("Comparison operator value {0} is not supported by {1} goal type.", comparisonOperator.ToString(), GoalType)); } DestinationUrlProperty = new GoalProperty <string> { ComparisonOperator = comparisonOperator, PropertyValue = destinationUrl.Trim() }; }
public TagToGoalRecordPagesPerVisit(IReadOnlyDictionary <string, int> columnMetadata, IList <object> row) : base(columnMetadata, row) { GoalType = GoalType.PagesPerVisit; if (_numberOfPagesOrdinal == -1) { _numberOfPagesOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "PageVisitGoal"); } if (_comparisonOperatorOrdinal == -1) { _comparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "PageVisitOperator"); } var numberOfPages = (short)row[_numberOfPagesOrdinal]; var valueOperatorByte = (byte)row[_comparisonOperatorOrdinal]; if (!GoalUtils.IsValidValueOperator(valueOperatorByte)) { throw new Exception(String.Format("NumberOfPages comparison operator value {0} is outside of range.", valueOperatorByte)); } var valueComparisonOperator = (ValueComparisonOperator)valueOperatorByte; if (!GoalUtils.IsValidNumericOperator(valueComparisonOperator)) { throw new Exception(String.Format("Value operator value {0} is not supported by {1} goal type.", valueComparisonOperator.ToString(), GoalType)); } NumberOfPagesProperty = new GoalProperty <short> { ValueComparisionOperator = valueComparisonOperator, PropertyValue = numberOfPages }; }
public TagToGoalRecordCustomEvent(Dictionary <string, int> columnMetadata, object[] row) : base(columnMetadata, row) { GoalType = GoalType.CustomEvent; if (_eventCategoryOrdinal == -1) { _eventCategoryOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventCategory"); } if (_categoryComparisonOperatorOrdinal == -1) { _categoryComparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventCategoryOperator"); } if (_eventNameOrdinal == -1) { _eventNameOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventName"); } if (_nameComparisonOperatorOrdinal == -1) { _nameComparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventNameOperator"); } if (_eventLabelOrdinal == -1) { _eventLabelOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventLabel"); } if (_labelComparisonOperatorOrdinal == -1) { _labelComparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventLabelOperator"); } if (_eventValueOrdinal == -1) { _eventValueOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventValue"); } if (_valueComparisonOperatorOrdinal == -1) { _valueComparisonOperatorOrdinal = MapFileUtils.GetColumnOrdinal(columnMetadata, "EventValueOperator"); } var eventCategory = (string)row[_eventCategoryOrdinal]; var categoryComparisonOperatorByte = (byte?)row[_categoryComparisonOperatorOrdinal]; EventCategoryProperty = CreateCustomEventGoalProperty("Category", eventCategory, categoryComparisonOperatorByte); var eventName = (string)row[_eventNameOrdinal]; var nameComparisonOperatorByte = (byte?)row[_nameComparisonOperatorOrdinal]; EventActionProperty = CreateCustomEventGoalProperty("Name", eventName, nameComparisonOperatorByte); var eventLabel = (string)row[_eventLabelOrdinal]; var labelComparisonOperatorByte = (byte?)row[_labelComparisonOperatorOrdinal]; EventLabelProperty = CreateCustomEventGoalProperty("Label", eventLabel, labelComparisonOperatorByte); var eventValue = (double?)row[_eventValueOrdinal]; var valueComparisonOperatorByte = (byte?)row[_valueComparisonOperatorOrdinal]; if (eventValue != null) { if (valueComparisonOperatorByte == null) { throw new Exception("ValueComparisonOperator value cannot be null when EventValue value is not null."); } if (!GoalUtils.IsValidValueOperator((byte)valueComparisonOperatorByte)) { throw new Exception(String.Format("ValueComparisonOperator value {0} is outside of range.", valueComparisonOperatorByte)); } var valueOperator = (ValueComparisonOperator)valueComparisonOperatorByte; if (!GoalUtils.IsValidNumericOperator(valueOperator)) { throw new Exception(String.Format("ValueOperator value {0} is not supported by {1} goal type.", valueOperator.ToString(), GoalType)); } EventValueProperty = new GoalProperty <double> { ValueComparisionOperator = valueOperator, PropertyValue = (double)eventValue }; } }