From 5973db52c683a899ac8f1b517d6af14864f3a59b Mon Sep 17 00:00:00 2001 From: Mathieu Lirzin Date: Fri, 28 Oct 2016 19:38:11 +0200 Subject: [PATCH] http: Add DB argument to 'url-handler'. * src/cuirass/http.scm (not-found): Delete. (url-handler): Add DB argument. (run-cuirass-server): Likewise. Pass it to 'run-server' STATE argument. --- src/cuirass/http.scm | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/cuirass/http.scm b/src/cuirass/http.scm index 459dba9..cf7783f 100644 --- a/src/cuirass/http.scm +++ b/src/cuirass/http.scm @@ -58,18 +58,20 @@ (define (request-path-components request) (split-and-decode-uri-path (uri-path (request-uri request)))) -(define (not-found request) - (values (build-response #:code 404) - (string-append "Resource not found: " - (uri->string (request-uri request))))) - -(define (url-handler request body) +(define (url-handler request body db) + (define* (respond response #:key body (db db)) + (values response body db)) (match (request-path-components request) (((or "jobsets" "specifications") . rest) - (values '((content-type . (application/json))) - (with-database db - (spec->json-string (car (db-get-specifications db)))))) - (_ (not-found request)))) + (respond '((content-type . (application/json))) + #:body (spec->json-string (car (db-get-specifications db))))) + (_ + (respond (build-response #:code 404) + #:body (string-append "Resource not found: " + (uri->string (request-uri request))))))) -(define (run-cuirass-server) - (run-server url-handler)) +(define (run-cuirass-server db) + (run-server url-handler + 'http ;server implementation + '() ;implementation parameters + db)) ;state