DXVcs2Git.UI.ViewModels.BranchViewModel.GetSyncOptions C# (CSharp) Méthode

GetSyncOptions() public méthode

public GetSyncOptions ( NGitLab.Models.MergeRequest mergeRequest ) : MergeRequestSyncAction
mergeRequest NGitLab.Models.MergeRequest
Résultat DXVcs2Git.Core.GitLab.MergeRequestSyncAction
        public MergeRequestSyncAction GetSyncOptions(MergeRequest mergeRequest)
        {
            var comments = gitLabWrapper.GetComments(mergeRequest);
            var mergeRequestSyncOptions = comments.Where(x => IsXml(x.Note)).Where(x => {
                var mr = MergeRequestOptions.ConvertFromString(x.Note);
                return mr?.ActionType == MergeRequestActionType.sync;
            }).Select(x => (MergeRequestSyncAction)MergeRequestOptions.ConvertFromString(x.Note).Action).LastOrDefault();
            return mergeRequestSyncOptions;
        }

Usage Example

        void RefreshSelectedBranch()
        {
            Branch = Repositories?.SelectedBranch;
            var mergeRequest = Branch?.MergeRequest;

            if (mergeRequest == null)
            {
                comment           = null;
                assignedToService = false;
                performTesting    = false;
                IsModified        = false;
            }
            else
            {
                if (Branch.SupportsTesting)
                {
                    var syncOptions = Branch.GetSyncOptions(mergeRequest.MergeRequest);
                    performTesting    = syncOptions?.PerformTesting ?? false;
                    assignedToService = (syncOptions?.AssignToSyncService ?? false) && IsTestUser(mergeRequest.Assignee);
                }
                else
                {
                    assignedToService = mergeRequest.Assignee == Branch.SyncServiceName;
                    performTesting    = false;
                }
                comment    = mergeRequest.Title;
                IsModified = false;
            }
            SupportsTesting = Branch?.SupportsTesting ?? false;
            RaisePropertyChanged(null);
        }
All Usage Examples Of DXVcs2Git.UI.ViewModels.BranchViewModel::GetSyncOptions