public static async Task <IEnumerable <JenkinsJob> > GetJobsFromView(JenkinsServer server, JenkinsView view)
        {
            Uri viewUri = new Uri(view.Url);

            var rangeSpecifierSupported = JenkinsServerValidator.RangeSpecifierSupported(server.Url);
            var jobsQuery = rangeSpecifierSupported ? JOBS_QUERY_WITH_RANGE : JOBS_QUERY;

            Uri         jobsInfoUri     = new Uri(viewUri, jobsQuery);
            JenkinsView viewWithJobData = await GetFromJSONData <JenkinsView>(server, jobsInfoUri);

            var result = viewWithJobData == null?Enumerable.Empty <JenkinsJob>() : viewWithJobData.Jobs;

            if (!rangeSpecifierSupported)
            {
                RestrictNumberOfJobBuilds(result);
            }

            return(result);
        }
Beispiel #2
0
        static ApiHandlerSettingsManager()
        {
            _serversCopy = new ObservableCollection <JenkinsServer>();

            if (Settings.Default.SolutionJobs == null)
            {
                Settings.Default.SolutionJobs = new SolutionJenkinsJobLinkList();
            }

            if (Settings.Default.JenkinsServers != null)
            {
                foreach (var s in Settings.Default.JenkinsServers)
                {
                    s.Version = JenkinsServerValidator.GetJenkinsVersion(s.Url);
                    _serversCopy.Add(s);
                }
            }

            Settings.Default.Save();
        }