[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/rt-liberation 0e6c7ca 34/72: Implement ticket history v
From: |
Stefan Monnier |
Subject: |
[elpa] externals/rt-liberation 0e6c7ca 34/72: Implement ticket history via REST. |
Date: |
Wed, 5 Aug 2020 11:57:38 -0400 (EDT) |
branch: externals/rt-liberation
commit 0e6c7ca0c5f3baa7c4e3ffb7019ee4e9a7203200
Author: Yoni Rabkin <yrk@gnu.org>
Commit: Yoni Rabkin <yrk@gnu.org>
Implement ticket history via REST.
Also, replace the cli version in the code with the rest version.
---
rt-liberation-rest.el | 28 ++++++++++++++++++++++++++++
rt-liberation.el | 2 +-
2 files changed, 29 insertions(+), 1 deletion(-)
diff --git a/rt-liberation-rest.el b/rt-liberation-rest.el
index aa06caf..85cabf4 100644
--- a/rt-liberation-rest.el
+++ b/rt-liberation-rest.el
@@ -91,6 +91,19 @@
"user=" user "&"
"pass=" pass "&")))
+(defun rt-liber-rest-history-string (scheme url ticket-id username password)
+ "Return the ticket show string."
+ (let ((user (url-encode-url username))
+ (pass (url-encode-url password)))
+ (concat scheme
+ "://"
+ url
+ "/REST/1.0/ticket/" ticket-id
+ "/history" "?"
+ "format=l" "&"
+ "user=" user "&"
+ "pass=" pass)))
+
(defun rt-liber-rest-call (url)
"Perform a REST call with URL."
(let ((url-request-method "POST"))
@@ -126,6 +139,13 @@
rt-liber-rest-username
rt-liber-rest-password
query-string)))
+ ((string= op "history")
+ (rt-liber-rest-call
+ (rt-liber-rest-history-string rt-liber-rest-scheme
+ rt-liber-rest-url
+ query-string
+ rt-liber-rest-username
+ rt-liber-rest-password)))
(t (error "unknown op [%s]" op))))
(defun rt-liber-rest-parse-http-header ()
@@ -196,6 +216,14 @@
(rt-liber-rest-show-query-runner idsublist)
#'rt-liber-ticket-base-retriever-parser-f))
+(defun rt-liber-rest-run-ticket-history-base-query (ticket-id)
+ "Run history query against server for TICKET-ID."
+ (rt-liber-parse-answer
+ (rt-liber-rest-query-runner "history" ticket-id)
+ #'(lambda ()
+ (rt-liber-rest-parse-http-header)
+ (buffer-substring (point) (point-max)))))
+
(provide 'rt-liberation-rest)
diff --git a/rt-liberation.el b/rt-liberation.el
index c7a3a33..1997adc 100644
--- a/rt-liberation.el
+++ b/rt-liberation.el
@@ -625,7 +625,7 @@ AFTER date after predicate."
TICKET-ALIST alist of ticket data.
ASSOC-BROWSER if non-nil should be a ticket browser."
(let* ((ticket-id (rt-liber-ticket-id-only ticket-alist))
- (contents (rt-liber-run-ticket-history-base-query ticket-id))
+ (contents (rt-liber-rest-run-ticket-history-base-query ticket-id))
(new-ticket-buffer (get-buffer-create
(concat "*RT Ticket #" ticket-id "*"))))
(with-current-buffer new-ticket-buffer
- [elpa] externals/rt-liberation 92e78fa 35/72: Integrate rt-liber-rest-edit-runner and add fields., (continued)
- [elpa] externals/rt-liberation 92e78fa 35/72: Integrate rt-liber-rest-edit-runner and add fields., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 5dc7165 36/72: Port status changes to REST interface., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation e5fe16e 40/72: Remove more spam related code., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 82f74ff 41/72: Re-write command set and assignment code., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 19dc998 44/72: * doc/rt-liberation.texinfo: Update documentation., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation e1c818c 19/72: * rt-liberation-rest.el: New file., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation a315322 21/72: * doc/gpl.texi: Update GPL copy., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation a723939 22/72: * doc/gpl.texi: Downgrade to version 2., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation e46e2ad 28/72: * rt-liberation.el: Syntax bug fix., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 447c9f5 30/72: * rt-liberation.el: Move to REST API for ls queries., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 0e6c7ca 34/72: Implement ticket history via REST.,
Stefan Monnier <=
- [elpa] externals/rt-liberation 0f650d0 37/72: * rt-liberation-rest.el: Write to debug if enabled., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 1e7f720 38/72: * rt-liberation-rest.el: Be more verbose., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 46d4ec1 39/72: Remove (too bad)., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 0fac4b7 43/72: Update copyright years., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation d4cfeed 50/72: * rt-liberation-report.el: Evolve notes., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation eddec0a 42/72: * rt-liberation.el: Start post REST cleanup., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 9ce5b01 51/72: * rt-liberation.el: Clear up old CLI note., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 5f63428 61/72: * rt-liberation.el: Look for the next ticket., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 6f53df4 48/72: Add research notes., Stefan Monnier, 2020/08/05
- [elpa] externals/rt-liberation 20bf7cc 58/72: Add rt-report., Stefan Monnier, 2020/08/05