Esempio n. 1
0
        public async Task <Epic> UpdateEpicMetadata(string epicKey, EpicMeta meta)
        {
            using var response = await _client.PostAsJsonAsync($"/api/epics/{epicKey}/meta", meta);

            response.EnsureSuccessStatusCode();
            return(await response.Content.ReadFromJsonAsync <Epic>());
        }
Esempio n. 2
0
        public async Task <Epic> UpdateEpic(string epicKey, EpicMeta meta)
        {
            var fieldsNameToKeyMap = await GetFields();

            var content = MapMetaToIssueContent(meta, fieldsNameToKeyMap);
            await _client.UpdateIssue(epicKey, content);

            var epics = await _client.QueryJql($"key={epicKey}");

            return(_mapper.MapEpic(epics.Single(), fieldsNameToKeyMap));
        }
Esempio n. 3
0
        private static IssueContent MapMetaToIssueContent(EpicMeta meta, IReadOnlyDictionary <string, string[]> map)
        {
            var content = new IssueContent
            {
                Fields =
                {
                    { "duedate", meta.DueDate?.ToString("yyyy-MM-dd") }
                }
            };

            var startDateField = map.TryGetValue("Start date", out var values) ? values.FirstOrDefault() : null;

            if (startDateField != null)
            {
                content.Fields[startDateField] = meta.StartDate?.ToString("yyyy-MM-dd");
            }
            return(content);
        }
 public async Task <Epic> UpdateEpic(string epicKey, EpicMeta meta)
 {
     return(await _epicProvider.UpdateEpic(epicKey, meta));
 }