示例#1
0
        private async Task <List <JobHistoryViewModel> > GetOwnerJobHistory(string selectedOwnerId, string currentJobId = "")
        {
            try
            {
                var jobs = await _jobStore.GetJobsForOwner(selectedOwnerId);

                var jobHistoriesHistoryViewModels = jobs.Select(j => new JobHistoryViewModel(j)).ToList();
                return(jobHistoriesHistoryViewModels);
            }
            catch (JobNotFoundException)
            {
                return(new List <JobHistoryViewModel>());
            }
        }
示例#2
0
        public async Task <IActionResult> Get(string ownerId, string repoId = "")
        {
            try
            {
                if (string.IsNullOrEmpty(ownerId))
                {
                    return(BadRequest("Missing argument: ownerId"));
                }

                try
                {
                    // get jobs
                    if (string.IsNullOrEmpty(repoId))
                    {
                        //by owner
                        var ownerJobs = await _jobStore.GetJobsForOwner(ownerId);

                        return(new ObjectResult(ownerJobs));
                    }

                    var repoJobs = await _jobStore.GetJobsForRepository(ownerId, repoId);

                    return(new ObjectResult(repoJobs));
                }
                catch (JobNotFoundException)
                {
                    var empty = new List <JobInfo>();
                    return(new ObjectResult(empty));
                }
            }
            catch (Exception ex)
            {
                Log.Error($"Error retrieving jobs for owner '{ownerId}' and repo '{repoId}' (optional)", ex);
                return(StatusCode(StatusCodes.Status500InternalServerError, ex));
            }
        }