diff --git a/collects/web-server/tools/servlet-env.ss b/collects/web-server/tools/servlet-env.ss index ef93f1cf97..ac02915831 100644 --- a/collects/web-server/tools/servlet-env.ss +++ b/collects/web-server/tools/servlet-env.ss @@ -44,7 +44,7 @@ `(html (head (title "Servlet has ended.")) (body (p "This servlet has ended, please return to the interaction window."))))))] [shutdown-server - (serve (build-standalone-servlet-configuration the-port the-path new-servlet))]) + (serve/web-config@ (build-standalone-servlet-configuration the-port the-path new-servlet))]) (send-url standalone-url #t) ; Wait for final call (semaphore-wait sema) diff --git a/collects/web-server/web-server-unit.ss b/collects/web-server/web-server-unit.ss index 304837c488..8c63c41002 100644 --- a/collects/web-server/web-server-unit.ss +++ b/collects/web-server/web-server-unit.ss @@ -76,5 +76,4 @@ (define-compound-unit/infer web-server@ (import tcp^ web-config^) (export web-server^) - (link web-config@->dispatch-server-config@ dispatch-server@))) - + (link web-config@->dispatch-server-config@ dispatch-server@))) \ No newline at end of file diff --git a/collects/web-server/web-server.ss b/collects/web-server/web-server.ss index 500afee77d..e361763fc1 100644 --- a/collects/web-server/web-server.ss +++ b/collects/web-server/web-server.ss @@ -7,31 +7,17 @@ "configuration.ss" "private/configuration-structures.ss") (provide/contract - [serve (case-> [configuration? . -> . (-> void?)] - [configuration? natural-number/c . -> . (-> void?)] - [configuration? natural-number/c string? . -> . (-> void?)])]) + [serve/web-config@ (configuration? . -> . (-> void?))]) - ; : configuration [nat] [(U str #f)] -> -> void - (define serve - (case-lambda - [(config) - (run-the-server config)] - [(config port) - (run-the-server (update-configuration config `((port . ,port))))] - [(config port listen-ip) - (run-the-server (update-configuration config `((port . ,port) (ip-address . ,listen-ip))))])) - - (define-unit-from-context tcp@ tcp^) - - (define-unit m@ (import web-server^) (export) - (init-depend web-server^) - (serve)) - - ; : configuration -> -> void - (define (run-the-server config) - (define-unit-binding c@ config (import) (export web-config^)) + ; serve/config@ : configuration -> (-> void) + (define (serve/web-config@ config@) + (define-unit-from-context tcp@ tcp^) + (define-unit m@ (import web-server^) (export) + (init-depend web-server^) + (serve)) + (define-unit-binding c@ config@ (import) (export web-config^)) (invoke-unit (compound-unit/infer - (import) - (link tcp@ c@ web-server@ m@) - (export))))) \ No newline at end of file + (import) + (link tcp@ c@ web-server@ m@) + (export))))) \ No newline at end of file