private void Handler(IConflictItem changedItem, IConflictRow row)
 {
     if (changedItem is IToolConflictItem toolItem)
     {
         if (changedItem is ToolConflictItem.Empty)
         {
             return;
         }
         if (row.ContainsStart)
         {
             return;
         }
         ToolModelHandler(toolItem);
     }
     else if (changedItem is IConnectorConflictItem connectorItem && row is IConnectorConflictRow connectorRow)
     {
         ConnectorHandler(connectorItem, connectorRow);
     }
예제 #2
0
 /// <summary>
 ///     Attempts to the resolve the <paramref name="conflictRow" /> that is in conflict using the different states of the
 ///     same row.
 /// </summary>
 /// <param name="conflictRow">The conflict row.</param>
 /// <param name="conflictClass">The conflict class.</param>
 /// <param name="currentRow">The row in the current version that is being edited.</param>
 /// <param name="preReconcileRow">The row prior to reconciliation or edit (child) version (these are edits that you made).</param>
 /// <param name="reconcileRow">The row that the current version is reconciling against or target (parent) version.</param>
 /// <param name="commonAncestorRow">
 ///     The common ancestor row of this version and the reconcile version (as they are in the
 ///     database; this is what the feature and attributes were before any edits were made).
 /// </param>
 /// <param name="childWins">if set to <c>true</c> indicating whether the child conflicts should over rule the targets.</param>
 /// <param name="columnLevel">if set to <c>true</c> indicating whether conflicts will be defined at the column level.</param>
 /// <returns>
 ///     Returns a <see cref="ConflictResolution" /> enumeration representing the state of the resolution.
 /// </returns>
 /// <remarks>
 ///     This method should be overridden by derived classes to provide
 ///     specific implementation for filtering row conflicts.
 /// </remarks>
 public abstract ConflictResolution Resolve(IConflictRow conflictRow, IConflictClass conflictClass, IRow currentRow, IRow preReconcileRow, IRow reconcileRow, IRow commonAncestorRow, bool childWins, bool columnLevel);