Prepare for support for code reloading

This commit is contained in:
Tony Garnock-Jones 2014-11-09 09:53:04 -05:00
parent ac13e7bc27
commit 5a717489d2
5 changed files with 1066 additions and 1052 deletions

View File

@ -1,5 +1,7 @@
Documentation/help text on the edit package page?
Move `generic-input` and friends into bootstrap.rkt
Somehow present all the tags available for filtering on the search page
- maybe just a big list?
- maybe checkboxes?

View File

@ -13,6 +13,7 @@
bootstrap-response
bootstrap-redirect
bootstrap-continuation-expiry-handler
add-classes
glyphicon)
@ -90,6 +91,18 @@
#:headers (append (map cookie->header (bootstrap-cookies))
headers)))
;; Request -> Response
(define (bootstrap-continuation-expiry-handler request)
(bootstrap-redirect (url->string (strip-parameters (request-uri request)))))
;; URL -> URL
(define (strip-parameters u)
(struct-copy url u
[path (map (lambda (element)
(struct-copy path/param element
[param '()]))
(url-path u))]))
;; (Listof (U Symbol String)) XExpr -> XExpr
(define (add-classes classes x)
(define class-strs (map (lambda (c) (if (symbol? c) (symbol->string c) c)) classes))

View File

@ -4,26 +4,11 @@
(require web-server/servlet-env)
(require web-server/managers/lru)
(require web-server/http/request-structs)
(require net/url)
(require "signals.rkt")
(require "bootstrap.rkt")
(define (strip-parameters u)
(struct-copy url u
[path (map (lambda (element)
(struct-copy path/param element
[param '()]))
(url-path u))]))
(define (default-expiry-handler request)
(bootstrap-redirect (url->string (strip-parameters (request-uri request)))))
(define (start-service #:port [port 8443]
#:ssl? [ssl? #t]
#:on-continuation-expiry [on-continuation-expiry default-expiry-handler]
request-handler-function)
(start-restart-signal-watcher)
request-handler-function
on-continuation-expiry)
(serve/servlet request-handler-function
#:launch-browser? #f
#:quit? #f

File diff suppressed because it is too large Load Diff

1041
src/site.rkt Normal file

File diff suppressed because it is too large Load Diff