private CancelRequestedQuery Match(CancelRequestedRecord cancelRecord) { CancelRequestedQuery query = null; if (this.cancelRequestedSubscriptions != null) { for (int i = 0; i < this.cancelRequestedSubscriptions.Count; i++) { string strB = (cancelRecord.Activity == null) ? null : cancelRecord.Activity.Name; if (string.CompareOrdinal(this.cancelRequestedSubscriptions[i].ActivityName, strB) == 0) { if (!CheckSubscription(this.cancelRequestedSubscriptions[i].ChildActivityName, cancelRecord.Child.Name)) { continue; } query = this.cancelRequestedSubscriptions[i]; break; } if ((string.CompareOrdinal(this.cancelRequestedSubscriptions[i].ActivityName, "*") == 0) && CheckSubscription(this.cancelRequestedSubscriptions[i].ChildActivityName, cancelRecord.Child.Name)) { query = this.cancelRequestedSubscriptions[i]; break; } } } if (((query == null) || (this.associatedProfile.ImplementationVisibility != ImplementationVisibility.RootScope)) || (this.ShouldTrackActivity(cancelRecord.Activity, query.ActivityName) && this.ShouldTrackActivity(cancelRecord.Child, query.ChildActivityName))) { return(query); } return(null); }
private void AddCancelRequestedSubscription(CancelRequestedQuery cancelQuery) { this.trackingRecordPreFilter.TrackCancelRequestedRecords = true; if (this.cancelRequestedSubscriptions == null) { this.cancelRequestedSubscriptions = new List <CancelRequestedQuery>(); } this.cancelRequestedSubscriptions.Add(cancelQuery); }
private CancelRequestedQuery Match(CancelRequestedRecord cancelRecord) { CancelRequestedQuery query = null; if (this.cancelRequestedSubscriptions != null) { for (var i = 0; i < this.cancelRequestedSubscriptions.Count; i++) { //check specific and then generic var activityName = cancelRecord.Activity == null ? null : cancelRecord.Activity.Name; if (string.CompareOrdinal(this.cancelRequestedSubscriptions[i].ActivityName, activityName) == 0) { if (CheckSubscription(this.cancelRequestedSubscriptions[i].ChildActivityName, cancelRecord.Child.Name)) { query = this.cancelRequestedSubscriptions[i]; break; } } else if (string.CompareOrdinal(this.cancelRequestedSubscriptions[i].ActivityName, "*") == 0) { if (CheckSubscription(this.cancelRequestedSubscriptions[i].ChildActivityName, cancelRecord.Child.Name)) { query = this.cancelRequestedSubscriptions[i]; break; } } } } if ((query != null) && (this.associatedProfile.ImplementationVisibility == ImplementationVisibility.RootScope)) { if ((!ShouldTrackActivity(cancelRecord.Activity, query.ActivityName)) || (!ShouldTrackActivity(cancelRecord.Child, query.ChildActivityName))) { return(null); } } return(query); }
private void AddCancelRequestedSubscription(CancelRequestedQuery cancelQuery) { this.trackingRecordPreFilter.TrackCancelRequestedRecords = true; if (this.cancelRequestedSubscriptions == null) { this.cancelRequestedSubscriptions = new List<CancelRequestedQuery>(); } this.cancelRequestedSubscriptions.Add(cancelQuery); }