Esempio n. 1
0
        public async Task CloseIssue(CloseIssueParameters parameters)
        {
            var closeResult = await _gitLabFacade.CloseIssue(parameters);

            if (closeResult.IsFailure)
            {
                _presenter.ShowError("Failed to close issue", closeResult.Error);
                return;
            }

            _presenter.ShowSuccess($"Successfully closed issue #{parameters.IssueId}");
        }
Esempio n. 2
0
        public async Task <Result <Issue> > CloseIssue(CloseIssueParameters parameters)
        {
            var client = await _clientFactory.Create();

            string projectId = await GetProjectId(client, parameters.Project);

            if (projectId == null)
            {
                return(Result.Fail <Issue>($"Project {parameters.Project} was not found"));
            }

            var closedIssue = await client.Issues.UpdateAsync(new UpdateIssueRequest(projectId, parameters.IssueId)
            {
                State = UpdatedIssueState.Close
            });

            return(Result.Ok(closedIssue));
        }
Esempio n. 3
0
 public async Task <Result> CloseIssue(CloseIssueParameters parameters)
 => await SafeGetResult(() => _issuesFacade.CloseIssue(parameters));