From 11847908bb370f4187bd8411acc6cf29fc199539 Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Sat, 21 Jul 2018 23:59:27 +0300 Subject: Add 'build-farm-project' command * build-farm.el (build-farm-get-entries): Add 'id'/'name' search types for 'project' entry type. * build-farm-project.el (build-farm-project): New command. --- build-farm-project.el | 6 ++++++ build-farm.el | 17 +++++++++++------ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/build-farm-project.el b/build-farm-project.el index c3cbfe4..e33a42b 100644 --- a/build-farm-project.el +++ b/build-farm-project.el @@ -177,6 +177,12 @@ ARGS." (interactive) (build-farm-get-display build-farm-url 'project 'all)) +;;;###autoload +(defun build-farm-project (project) + "Display build farm PROJECT." + (interactive (list (build-farm-read-project))) + (build-farm-get-display build-farm-url 'project 'id project)) + (provide 'build-farm-project) ;;; build-farm-project.el ends here diff --git a/build-farm.el b/build-farm.el index af6f63c..116d3ee 100644 --- a/build-farm.el +++ b/build-farm.el @@ -39,6 +39,7 @@ ;; - `build-farm-queued-builds' ;; - `build-farm-jobsets' ;; - `build-farm-projects' +;; - `build-farm-project' ;; ;; You can press RET in a list (of builds, etc.) to see more info on the ;; current entry. You can also select several entries in the list (with @@ -152,12 +153,16 @@ See `build-farm-search-url' for the meaning of ROOT-URL, SEARCH-TYPE and ARGS." (unless (eq search-type 'fake) (if (eq entry-type 'project) - (or (build-farm-cache-get root-url 'projects) - (let ((entries (apply #'build-farm-get-entries-1 - root-url entry-type search-type args))) - (build-farm-cache-set root-url 'projects entries) - (build-farm-cache-set root-url 'projects-received t) - entries)) + (if (memq search-type '(id name)) + (bui-entries-by-ids + (build-farm-get-entries root-url 'project 'all) + args) + (or (build-farm-cache-get root-url 'projects) + (let ((entries (apply #'build-farm-get-entries-1 + root-url entry-type search-type args))) + (build-farm-cache-set root-url 'projects entries) + (build-farm-cache-set root-url 'projects-received t) + entries))) (apply #'build-farm-get-entries-1 root-url entry-type search-type args)))) -- cgit v1.2.3