Exemplo n.º 1
0
 protected void GetRemoteChanges()
 {
     Transport.AddObserver(SyncStates.GettingRemoteChange, SyncObserver);
     RemoteChanges = Transport.Receive <EntitiesChangeset>();
     RemoteChanges.SetSyncSession(SyncSession);
     StatProvider.SetRemoteChanges(RemoteChanges);
 }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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));
        }
Exemplo n.º 5
0
        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);
        }
Exemplo n.º 6
0
        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));
        }
Exemplo n.º 7
0
 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;
     }
 }
Exemplo n.º 8
0
 protected virtual void EstablishNewSession()
 {
     StatProvider.SetNewState(SyncStates.EstablishNewSession);
 }
Exemplo n.º 9
0
 private void SyncEnd()
 {
     StatProvider.EndSync();
 }
Exemplo n.º 10
0
 protected void ApplyRemoteChange(IConflictsManager conflictsManager)
 {
     RemoteChanges.ApplyChanges(DataStore as ISqlDataStore, StatProvider, conflictsManager);
     StatProvider.SetConflicts(conflictsManager);
 }
Exemplo n.º 11
0
 protected virtual void DetermineTypeOfSync()
 {
     StatProvider.SetNewState(SyncStates.DetermineTypeOfSync);
 }
Exemplo n.º 12
0
 protected override void CleanEntities()
 {
     StatProvider.SetNewState(SyncStates.CleanEntites);
     CleanEntities(DataStore, SyncSession.HighBoundaryAnchor);
 }