private async Task GetJiraTicketSummaryAsync(JiraWorklogEntry jiraWorklogEntry) { jiraWorklogEntry.Summary = "Loading..."; var result = await TimeEntryService.GetJiraTicketSummaryAsync(jiraWorklogEntry.Ticket); jiraWorklogEntry.Summary = result; }
private async Task SubmitJiraWorklogEntryAsync(HttpClient jiraClient, JiraWorklogEntry jiraWorklogEntry, ICollection <JiraWorklogEntry> jiraWorkLogEntries) { try { var worklogUrl = $"{_jiraSettings.Value.ApiUrl}issue/{jiraWorklogEntry.Ticket}/worklog"; var request = new HttpRequestMessage(HttpMethod.Post, worklogUrl); var jsonBody = JsonConvert.SerializeObject(jiraWorklogEntry); var jiraWorkLogEntryHttpRequestContent = new StringContent( jsonBody, Encoding.UTF8, ApplicationJson ); request.Content = jiraWorkLogEntryHttpRequestContent; _logger.LogDebug($"Attempting to submit: {jsonBody} to the url: {worklogUrl}"); using var httpResponse = await jiraClient.SendAsync(request); var responseBody = httpResponse.EnsureSuccessStatusCode(); // Remove the successful entry from the list so we can return it jiraWorkLogEntries.Remove(jiraWorklogEntry); } catch (HttpRequestException hre) { _logger.LogWarning(hre, $"An http response was not successful when in {nameof(SubmitJiraWorklogEntryAsync)} when trying to submit a worklog for: {jiraWorklogEntry.Ticket}{Environment.NewLine}Error: {hre.Message}"); } catch (Exception ex) { _logger.LogError(ex, $"An error occurred in {nameof(SubmitJiraWorklogEntryAsync)} when trying to submit a worklog for: {jiraWorklogEntry.Ticket}{Environment.NewLine}Error: {ex.Message}"); throw; } }
private void DeleteEntry(JiraWorklogEntry jiraWorklogEntry) { _jiraWorklogEntries.Remove(jiraWorklogEntry); }
private void AddNewTimeEntry() { var newTimeEntry = new JiraWorklogEntry(); _jiraWorklogEntries.Add(newTimeEntry); }