From: Victor Garcia Date: Tue, 26 Jun 2012 14:01:33 +0000 (+0200) Subject: improving performance in the get_job() method X-Git-Tag: v0.2.23~285^2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8d25708b38fc43cb09569f522866d19a70c1a8e0;p=tools%2Fpython-jenkinsapi.git improving performance in the get_job() method --- diff --git a/jenkinsapi/jenkins.py b/jenkinsapi/jenkins.py index 646098e..040b8d2 100644 --- a/jenkinsapi/jenkins.py +++ b/jenkinsapi/jenkins.py @@ -117,6 +117,14 @@ class Jenkins(JenkinsBase): for info in self._data["jobs"]: yield info["name"], Job(info["url"], info["name"], jenkins_obj=self) + def get_jobs_info(self): + """ + Get the jobs information + :return url, name + """ + for info in self._data["jobs"]: + yield info["url"], info["name"] + def get_jobs_list(self): """ return jobs dict,'name:url' @@ -263,9 +271,9 @@ class Jenkins(JenkinsBase): :param jobname: name of job, str :return: Job obj """ - for name, job in self.get_jobs(): + for url, name in self.get_jobs_info(): if name == jobname: - return job + return Job(url, name, jenkins_obj=self) raise UnknownJob(jobname) def get_node_dict(self):