file-server: command-line http file server.

db4
John Benediktsson 2015-04-19 17:18:01 -07:00
parent 30d7d0dac2
commit 529bf91643
1 changed files with 35 additions and 0 deletions

View File

@ -0,0 +1,35 @@
! Copyright (C) 2015 John Benediktsson
! See http://factorcode.org/license.txt for BSD license
USING: accessors command-line concurrency.messaging http.server
http.server.static io io.pathnames io.servers kernel
logging.server namespaces sequences threads ;
IN: file-server
: file-server-logging ( quot -- )
[
init-namespaces
receive
dup first "log-message" = [
dup last "http.server" = [
dup rest first3 write-message flush
] when
] when
"log-server" get-global send t
] "Log server (file-server)" spawn-server "log-server" [
call
] with-variable ; inline
: file-server-main ( -- )
[
command-line get ?first current-directory get or
<static>
t >>allow-listings
main-responder set-global
8080 httpd wait-for-server
] file-server-logging ;
MAIN: file-server-main