private void ShowEditRuleView(SyncRule rule) { View.Content = new EditRuleView() { DataContext = new EditRuleViewModel(_syncModel, rule) }; }
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; } } } }
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; } }
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); } }
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; } }
public EditRuleMessage(SyncRule syncRule) { SyncRule = syncRule; }
public EditRuleViewModel(SyncModel model, SyncRule rule) { _model = model; _rule = rule; _isNew = !RuleValid; }
public SyncRuleViewModel(SyncRule rule) { _rule = rule; }