AutoMerge.BranchesViewModel.InitializeAsync C# (CSharp) Метод

InitializeAsync() защищенный Метод

protected InitializeAsync ( object sender, SectionInitializeEventArgs e ) : System.Threading.Tasks.Task
sender object
e SectionInitializeEventArgs
Результат System.Threading.Tasks.Task
        protected async override Task InitializeAsync(object sender, SectionInitializeEventArgs e)
        {
            Logger.Debug("Start initilize branches section");

            var tfs = Context.TeamProjectCollection;
            var versionControl = tfs.GetService<VersionControlServer>();
            SubscribeWorkspaceChanges(versionControl);

            _changesetService = new ChangesetService(versionControl);

            _eventAggregator.GetEvent<SelectChangesetEvent>()
                .Subscribe(OnSelectedChangeset);
            _eventAggregator.GetEvent<BranchSelectedChangedEvent>()
                .Subscribe(OnBranchSelectedChanged);

            if (e.Context == null)
            {
                Workspaces =
                    new ObservableCollection<Workspace>(versionControl.QueryWorkspaces(null,
                        tfs.AuthorizedIdentity.UniqueName, Environment.MachineName));
                if (Workspaces.Count > 0)
                {
                    Workspace = WorkspaceHelper.GetWorkspace(versionControl, Workspaces);
                    ShowWorkspaceChooser = Workspaces.Count > 1;
                }
                else
                {
                    Workspace = null;
                }

                MergeModes = new ObservableCollection<MergeMode>
                {
                    MergeMode.Merge,
                    MergeMode.MergeAndCheckIn
                };
                MergeMode = Settings.Instance.LastMergeOperation;

                await RefreshAsync();
            }
            else
            {
                RestoreContext(e);
            }

            Logger.Debug("End initialize branches section");
        }