/// <summary> /// Called when a merge is about to be processed. /// </summary> /// <param name="changes">The changes.</param> /// <returns>The <see cref="CancelEventArgs"/>.</returns> internal bool OnMergeStarted(ObjectRepositoryChangeCollection changes) { var args = new MergeStartedEventArgs(changes); MergeStarted?.Invoke(this, args); return(!args.Cancel); }
private void When(MergeStarted e) { var otherBlacklistIds = e.BlackListedIds.Except(_buddyIdsBlackList); _buddyIdsBlackList.AddRange(otherBlacklistIds); Status = GroupStatus.Merging; }
private void onMergeStarted() { if (MergeStarted == null) { return; } MergeStarted.Invoke(this, new StatusChangedArgument()); }
public void StartMerge(Group otherGroup) { if (Id == otherGroup.Id) { throw new InvalidOperationException("Can't merge the 2 same groups"); } var e = new MergeStarted(Id, otherGroup.Id, otherGroup.Blacklist.ToList()); Publish(e); }
public void OnMergeStarted(MergeEventArgs e) { MergeStarted?.Invoke(this, e); }
private void OnMergeStarted(MergeEventArgs e) => MergeStarted?.Invoke(this, e);