Example #1
0
        private void OnOpened(object sender, OpenedEventArgs eventArgs)
        {
            try
            {
                RefreshConfigViewModel();
                RaisePropertyChangedEvent("IsConfigurationPersisted");
                if (eventArgs.Error == null)
                {
                    if (Utilities.IsGuid(eventArgs.FilePath))
                    {
                        // opened from DB
                        Guid sessionGroupUniqueId = new Guid(eventArgs.FilePath);
                        SetSessionGroupUniqueId(this.DataModel.Configuration.SessionGroupUniqueId);
                    }
                    else
                    {
                        // opened from file
                        SessionGroupStatus = new SessionGroupStatus(Guid.Empty);
                    }

                    RaisePropertyChangedEvent("Title");
                    if (!IsConfigurationPersisted)
                    {
                        ViewConfigurationCommand.Open(this, null);
                    }
                }
            }
            catch (Exception e)
            {
                Utilities.HandleException(e);
            }
        }
Example #2
0
        public void SetSessionGroupUniqueId(Guid sessionGroupUniqueId)
        {
            SessionGroupStatus = new SessionGroupStatus(sessionGroupUniqueId);
            ConflictManager    = new ApplicationViewModel(this);
            ConflictManager.SetSessionGroupUniqueId(sessionGroupUniqueId, true);
            this.RuntimeManager.SetSessionGroupUniqueId(sessionGroupUniqueId, ConflictManager);
            Properties.Settings.Default.LastSessionGroupUniqueId = sessionGroupUniqueId;

            if (!GlobalConfiguration.UseWindowsService)
            {
                ISyncStateManager stateManager = SqlSyncStateManager.GetInstance();
                stateManager.TryResetSessionGroupStates(sessionGroupUniqueId);
                RuntimeManager.DisableAutoRefresh();
            }
            else
            {
                RuntimeManager.EnableAutoRefresh();
            }

            Refresh();
        }