protected void GetRemoteChanges() { Transport.AddObserver(SyncStates.GettingRemoteChange, SyncObserver); RemoteChanges = Transport.Receive <EntitiesChangeset>(); RemoteChanges.SetSyncSession(SyncSession); StatProvider.SetRemoteChanges(RemoteChanges); }
protected override void CloseSession() { StatProvider.SetNewState(SyncStates.ClosingSession); // TODO Should be manage by client sync not by SyncMode if (SyncType != SyncTypes.OneWay) { SyncSession.HasSuccess = true; var syncSessionRepo = new SyncSessionInfoRepository(DataStore); syncSessionRepo.Save(SyncSession); } Transport.Send <bool>(true); }
private void SyncServerChange() { if (SyncType == SyncTypes.OneWay) { return; } GetRemoteChanges(); ApplyRemoteChange(new IgnoreAllConflicts()); var conflicts = Transport.Receive <ResolveAllConflicts>(); StatProvider.SetConflicts(conflicts); conflicts.ApplyRemoteResolution(DataStore as ISqlDataStore, SyncSession, StatProvider); }
public async Task <IActionResult> Index() { HomeViewModel model = new HomeViewModel(); StatProvider statProvider = new StatProvider(); model.MainStat = await statProvider.GetStatAsync(); VacancyProvider vacancyProvider = new VacancyProvider(); var hotVacancies = await vacancyProvider.GetVacancyAsync(); model.HotVacancies = hotVacancies.Take(10).ToList(); return(View(model)); }
private void SyncServerChange() { if (SyncType == SyncTypes.OneWay) { return; } Conflicts.RemoveInvolve(LocalEntitiesChangeset); StatProvider.SetNewState(SyncStates.SendingServerChange, Transport); Transport.Send(LocalEntitiesChangeset); StatProvider.SetNewState(SyncStates.SendingConflictsSolved, Transport); Transport.Send(Conflicts); }
public async Task <IActionResult> Index(string specUid = "") { CandidatsViewModel model = new CandidatsViewModel(); CandidateProvider candidateProvider = new CandidateProvider(); var candidats = await candidateProvider.GetCandidats(specUid); model.Candidats = candidats; StatProvider statProvider = new StatProvider(); model.MainStat = await statProvider.GetStatAsync(); return(View(model)); }
private void Work() { try { InitSync(); Conflicts = SyncRemoteChange(); DetermineTypeOfSync(); SyncServerChange(); FinalizeSync(); } catch (Exception ex) { ErrorOccurs = true; Logger.Error(ex); StatProvider.SetNewState(SyncStates.InError); } finally { IsSyncInProgress = false; } }
protected virtual void EstablishNewSession() { StatProvider.SetNewState(SyncStates.EstablishNewSession); }
private void SyncEnd() { StatProvider.EndSync(); }
protected void ApplyRemoteChange(IConflictsManager conflictsManager) { RemoteChanges.ApplyChanges(DataStore as ISqlDataStore, StatProvider, conflictsManager); StatProvider.SetConflicts(conflictsManager); }
protected virtual void DetermineTypeOfSync() { StatProvider.SetNewState(SyncStates.DetermineTypeOfSync); }
protected override void CleanEntities() { StatProvider.SetNewState(SyncStates.CleanEntites); CleanEntities(DataStore, SyncSession.HighBoundaryAnchor); }