Esempio n. 1
0
 private void ShowEditRuleView(SyncRule rule)
 {
     View.Content = new EditRuleView()
     {
         DataContext = new EditRuleViewModel(_syncModel, rule)
     };
 }
Esempio n. 2
0
 private static void AssignActionBySZRule(SyncData syncData, SyncRule syncRule)
 {
     if (syncData.SCS.HasFlag(SyncConflictState.BiggerInSource))
     {
         if (syncRule.CompareOperationArgument.Contains(">"))
         {
             if (syncRule.Action == "Dlt")
             {
                 syncData.SAS = SyncActionState.Delete;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Skp")
             {
                 syncData.SAS = SyncActionState.Skip;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Shr")
             {
                 syncData.SAS = SyncActionState.Share;
                 syncData.SD  = SyncDirection.Source;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Cpy")
             {
                 syncData.SAS = SyncActionState.Copy;
                 syncData.SD  = SyncDirection.Source;
                 syncData.WasTriggeredBySyncRule = true;
             }
         }
     }
     else if (syncData.SCS.HasFlag(SyncConflictState.SmallerInSource))
     {
         if (syncRule.CompareOperationArgument.Contains("<"))
         {
             if (syncRule.Action == "Dlt")
             {
                 syncData.SAS = SyncActionState.Delete;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Skp")
             {
                 syncData.SAS = SyncActionState.Skip;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Shr")
             {
                 syncData.SAS = SyncActionState.Share;
                 syncData.SD  = SyncDirection.Target;
                 syncData.WasTriggeredBySyncRule = true;
             }
             else if (syncRule.Action == "Cpy")
             {
                 syncData.SAS = SyncActionState.Copy;
                 syncData.SD  = SyncDirection.Target;
                 syncData.WasTriggeredBySyncRule = true;
             }
         }
     }
 }
Esempio n. 3
0
        private static void AssignActionByEXRule(SyncData syncData, SyncRule syncRule)
        {
            if (syncData.SCS.HasFlag(SyncConflictState.DoesntExistInTarget) && (syncRule.CompareOperationArgument == "T"))
            {
                //****
                syncData.SAS = SyncActionState.Skip;
                return;
            }
            if (syncData.SCS.HasFlag(SyncConflictState.DoesntExistInSource) && (syncRule.CompareOperationArgument == "S"))
            {
                //****
                syncData.SAS = SyncActionState.Skip;
                return;
            }

            if (syncRule.Action == "Dlt")
            {
                syncData.SAS = SyncActionState.Delete;
                syncData.WasTriggeredBySyncRule = true;
            }
            else if (syncRule.Action == "Skp")
            {
                syncData.SAS = SyncActionState.Skip;
                syncData.WasTriggeredBySyncRule = true;
            }
            else if (syncRule.Action == "Shr")
            {
                syncData.SAS = SyncActionState.Share;

                if (syncRule.ActionArgument == "S")
                {
                    syncData.SD = SyncDirection.Source;
                }
                else
                {
                    syncData.SD = SyncDirection.Target;
                }
                syncData.WasTriggeredBySyncRule = true;
            }
            else if (syncRule.Action == "Cpy")
            {
                syncData.SAS = SyncActionState.Copy;

                if (syncRule.ActionArgument == "S")
                {
                    syncData.SD = SyncDirection.Source;
                }
                else
                {
                    syncData.SD = SyncDirection.Target;
                }
                syncData.WasTriggeredBySyncRule = true;
            }
        }
Esempio n. 4
0
 private static void AssignSyncActionAndSyncDirection(SyncData syncData, SyncRule syncRule)
 {
     if (syncRule.CompareOperation == "EX")
     {
         AssignActionByEXRule(syncData, syncRule);
     }
     else if (syncRule.CompareOperation == "LMT")
     {
         AssignActionByLMTRule(syncData, syncRule);
     }
     else if (syncRule.CompareOperation == "SZ")
     {
         AssignActionBySZRule(syncData, syncRule);
     }
 }
Esempio n. 5
0
 private static void RunRule(SyncRule syncRule, SyncData syncData)
 {
     if (syncRule.CompareOperation == "EX")
     {
         AssignSyncActionAndSyncDirection(syncData, syncRule);
     }
     else if ((syncData.SCS.HasFlag(SyncConflictState.OlderInSource) || syncData.SCS.HasFlag(SyncConflictState.NewerInSource)) &&
              syncRule.CompareOperation == "LMT")
     {
         AssignSyncActionAndSyncDirection(syncData, syncRule);
     }
     else if ((syncData.SCS.HasFlag(SyncConflictState.SmallerInSource) || syncData.SCS.HasFlag(SyncConflictState.BiggerInSource)) &&
              syncRule.CompareOperation == "SZ")
     {
         AssignSyncActionAndSyncDirection(syncData, syncRule);
     }
     else
     {
         syncData.SAS = SyncActionState.Skip;
     }
 }
Esempio n. 6
0
 public EditRuleMessage(SyncRule syncRule)
 {
     SyncRule = syncRule;
 }
Esempio n. 7
0
 public EditRuleViewModel(SyncModel model, SyncRule rule)
 {
     _model = model;
     _rule  = rule;
     _isNew = !RuleValid;
 }
Esempio n. 8
0
 public SyncRuleViewModel(SyncRule rule)
 {
     _rule = rule;
 }