private void UpdatePipeLines()
        {
            Task.Factory.StartNew(() =>
            {
                var mrList = OpenedMergeRequests.ToList();

                var pipelines = _gitLabModel.GetPipelines();

                foreach (var pipeline in pipelines)
                {
                    var mergeRequest = mrList.FirstOrDefault(mr => mr.SourceBranch == pipeline.Ref);

                    if (mergeRequest == null)
                    {
                        continue;
                    }

                    mergeRequest.PipelineStatus = (MergeRequestPipelineStatus)(int)pipeline.Status;

                    mrList.Remove(mergeRequest);

                    if (!mrList.Any())
                    {
                        break;
                    }
                }
            }, TaskCreationOptions.LongRunning);
        }
        private void UpdateMergeRequests()
        {
            OpenedMergeRequests.Clear();

            var openedMergeRequests = _gitLabModel.GetOpenedMergeRequests();

            var currentBranch = _gitModel.GetCurrentBramch();

            var favoriteGoupUsers = _gitLabModel.GetUsersFromFavoriteGroup();

            foreach (var mergeRequest in openedMergeRequests)
            {
                var mergeRequestVm = new MergeRequestViewModel(mergeRequest, _gitModel, _gitLabModel)
                {
                    IsBranchCheckedOut = mergeRequest.SourceBranch == currentBranch,
                    IsMyGroup          = favoriteGoupUsers.Contains(mergeRequest.Assignee?.Name) ||
                                         favoriteGoupUsers.Contains(mergeRequest.Author?.Name)
                };

                OpenedMergeRequests.Add(mergeRequestVm);
            }
        }