This commit is contained in:
Akira Tempaku 2025-04-22 22:30:12 +09:00
parent 6736b3cd60
commit bb9e5fb6cd
Signed by: paku
GPG key ID: 5B4E8402BCC50607

View file

@ -81,28 +81,28 @@
(update (symbolicate 'update- endpoint)) (update (symbolicate 'update- endpoint))
(delete (symbolicate 'delete- endpoint))) (delete (symbolicate 'delete- endpoint)))
`(list `(list
(defun ,get-list (&key query) (defun ,get-list (&key query)
(%request :get ,str-endpoint :query query)) (%request :get ,str-endpoint :query query))
(defun ,get-detail (id &key query) (defun ,get-detail (id &key query)
(%request :get ,str-endpoint :path id :query query)) (%request :get ,str-endpoint :path id :query query))
(defun ,create (content &key query) (defun ,create (content &key query)
(let ((id (getf content :id))) (let ((id (getf content :id)))
(%request (if id :put :post) (%request (if id :put :post)
,str-endpoint ,str-endpoint
:path id :path id
:query query :query query
:content (remove-from-plist content :id)))) :content (remove-from-plist content :id))))
(defun ,update (id content) (defun ,update (id content)
(%request :patch ,str-endpoint :path id :content content)) (%request :patch ,str-endpoint :path id :content content))
(defun ,delete (id) (defun ,delete (id)
(%request :delete ,str-endpoint :path id))))) (%request :delete ,str-endpoint :path id)))))
(defmacro define-object-client (endpoint) (defmacro define-object-client (endpoint)
(let ((str-endpoint (string-downcase (string endpoint))) (let ((str-endpoint (string-downcase (string endpoint)))
(get (symbolicate 'get- endpoint)) (get (symbolicate 'get- endpoint))
(update (symbolicate 'update- endpoint))) (update (symbolicate 'update- endpoint)))
`(list `(list
(defun ,get (&key query) (defun ,get (&key query)
(%request :get ,str-endpoint :query query)) (%request :get ,str-endpoint :query query))
(defun ,update (content) (defun ,update (content)
(%request :patch ,str-endpoint :content content))))) (%request :patch ,str-endpoint :content content)))))