diff options
author | Colin Okay <okay@toyful.space> | 2022-02-23 12:26:43 -0600 |
---|---|---|
committer | Colin Okay <okay@toyful.space> | 2022-02-23 12:26:43 -0600 |
commit | 39fbd8588216cb4b4cb7110f82f42eecd27e6236 (patch) | |
tree | 3df465be491cd61ff9676ba17cb02e6bf49719bd | |
parent | 92fe387b39d56f94e19d412c24a0c19a792f1ad1 (diff) |
support for app prefixes
-rw-r--r-- | clpmfile.lock | 22 | ||||
-rw-r--r-- | lazybones-client.lisp | 7 |
2 files changed, 18 insertions, 11 deletions
diff --git a/clpmfile.lock b/clpmfile.lock index 521b961..63e123d 100644 --- a/clpmfile.lock +++ b/clpmfile.lock @@ -33,35 +33,37 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; :releases -("alexandria" :version "2021-12-09" :source "quicklisp" :systems ("alexandria")) +("alexandria" :version "2022-02-20" :source "quicklisp" :systems ("alexandria")) ("babel" :version "2020-09-25" :source "quicklisp" :systems ("babel")) ("cffi" :version "2021-04-11" :source "quicklisp" :systems ("cffi" "cffi-grovel" "cffi-toolchain")) ("cl-annot" :version "2015-06-08" :source "quicklisp" :systems ("cl-annot")) ("cl-change-case" :version "2021-04-11" :source "quicklisp" :systems ("cl-change-case")) -("cl-ppcre" :version "2019-05-21" :source "quicklisp" :systems +("cl-ppcre" :version "2022-02-20" :source "quicklisp" :systems ("cl-ppcre" "cl-ppcre-unicode")) -("cl-str" :version "2021-05-31" :source "quicklisp" :systems ("str")) +("cl-str" :version "2022-02-20" :source "quicklisp" :systems ("str")) ("cl-syntax" :version "2015-04-07" :source "quicklisp" :systems ("cl-syntax" "cl-syntax-annot")) ("cl-unicode" :version "2021-02-28" :source "quicklisp" :systems ("cl-unicode")) -("closer-mop" :version "2021-12-30" :source "quicklisp" :systems ("closer-mop")) +("closer-mop" :version "2022-02-20" :source "quicklisp" :systems ("closer-mop")) ("fast-io" :version "2020-09-25" :source "quicklisp" :systems ("fast-io")) ("jonathan" :version "2020-09-25" :source "quicklisp" :systems ("jonathan")) -("lambda-riffs" :version (:commit "f7b3c081f2361f7370c80e7ff4a432241f34ce55") +("lambda-riffs" :version (:commit "83b4f38ffb34dc39164024592e6a6a9743ae53f1") :source :implicit-vcs :systems ("lambda-riffs")) -("lazybones" :version (:commit "128f72863fa3f736c93175267beb23292e70e096") +("lazybones" :version (:commit "6f05e6beaecf5bf3d91ad883f00ae2d0c397b895") :source :implicit-vcs :systems ("lazybones")) ("lazybones-client.asd" :version :newest :source :implicit-file :systems ("lazybones-client")) ("lisp-namespace" :version "2021-10-21" :source "quicklisp" :systems ("lisp-namespace")) -("named-readtables" :version "2021-12-09" :source "quicklisp" :systems +("named-readtables" :version "2022-02-20" :source "quicklisp" :systems ("named-readtables")) ("proc-parse" :version "2019-08-13" :source "quicklisp" :systems ("proc-parse")) ("static-vectors" :version "2021-06-30" :source "quicklisp" :systems ("static-vectors")) +("trivial-documentation" :version "2016-12-07" :source "quicklisp" :systems + ("trivial-documentation")) ("trivial-features" :version "2021-12-09" :source "quicklisp" :systems ("trivial-features")) ("trivial-gray-streams" :version "2021-01-24" :source "quicklisp" :systems @@ -117,7 +119,8 @@ ("cl-unicode" ((:system :name "cl-ppcre-unicode") (:system :name "cl-unicode"))) -("closer-mop" ((:system :name "lazybones") (:system :name "closer-mop"))) +("closer-mop" + ((:system :name "trivial-documentation") (:system :name "closer-mop"))) ("fast-io" ((:system :name "jonathan") (:system :name "fast-io"))) @@ -141,6 +144,9 @@ ("static-vectors" ((:system :name "fast-io") (:system :name "static-vectors"))) +("trivial-documentation" + ((:system :name "lazybones") (:system :name "trivial-documentation"))) + ("trivial-features" ((:system :name "cffi") (:system :name "trivial-features")) ((:system :name "babel") (:system :name "trivial-features"))) diff --git a/lazybones-client.lisp b/lazybones-client.lisp index 8e215d6..eb626c2 100644 --- a/lazybones-client.lisp +++ b/lazybones-client.lisp @@ -91,7 +91,7 @@ COOKIES should be an instance of CL-COOKIE:COOKIE-JAR. Defaults to for p in params collect (param-to-string p (plusp count)))) -(defun generate-client-function-for-endpoint (ep) +(defun generate-client-function-for-endpoint (app-prefix ep) (let ((defun-name (endpoint-to-defun-name ep)) (vars @@ -113,6 +113,7 @@ COOKIES should be an instance of CL-COOKIE:COOKIE-JAR. Defaults to (apply #'concatenate 'string lazybones-client.shared:*host* + ,app-prefix (format nil ,format-string ,@vars) ,(when qparams `(when (or ,@qparams) (list "?" ,@(params-to-query-string qparams))))))) @@ -120,12 +121,12 @@ COOKIES should be an instance of CL-COOKIE:COOKIE-JAR. Defaults to `(if lazybones-client.shared:*body* (,dex-fn lazybones-client.shared::req-string :content lazybones-client.shared:*body* :cookie-jar lazybones-client.shared:*cookies* :headers lazybones-client.shared:*headers*) (,dex-fn lazybones-client.shared::req-string :cookie-jar lazybones-client.shared:*cookies* :headers lazybones-client.shared:*headers*)) - `(,dex-fn lazybones-client.shared::req-string :cookie-jar lazybones-client.shared:*cookies* :headers lazybones-client.shared:*headers*)))))) + `(,dex-fn lazybones-client.shared::req-strinqg :cookie-jar lazybones-client.shared:*cookies* :headers lazybones-client.shared:*headers*)))))) (defun generate-client-functions-for-app (app) (loop for ep in (lazybones::app-endpoints app) - collect (generate-client-function-for-endpoint ep))) + collect (generate-client-function-for-endpoint (lazybones::app-prefix app) ep))) (defun all-function-names (app) (mapcar 'endpoint-to-defun-name (lazybones::app-endpoints app))) |