USING: accessors namespaces ; USING: io.sockets.secure io.servers ; USING: furnace.actions furnace.boilerplate ; USING: http.server http.server.dispatchers http.server.static ; IN: triangle-beer-league SYMBOLS: key-password key-file dh-file ; TUPLE: tbl < dispatcher ; : ( -- action ) { tbl "tbl" } >>template ; : ( -- action ) { tbl "schedule" } >>template ; : ( -- responder ) tbl new-dispatcher ! "resource:work/triangle-beer-league/schedule" enable-fhtml >>default "resource:work/triangle-beer-league" enable-fhtml >>default ; ! "" add-responder ! "schedule" add-responder ! "resource:work/triangle-beer-league" >>default ! { tbl "tbl-common" } >>template ; : init-testing ( -- ) "vocab:openssl/test-1.2/dh2048.pem" dh-file set-global "vocab:openssl/test-1.2/server.pem" key-file set-global "password" key-password set-global main-responder set-global ; : ( -- config ) key-file get >>key-file dh-file get >>dh-file key-password get >>password ; : ( -- threaded-server ) >>secure-config 8080 >>insecure 8431 >>secure ; : start-tbl-site ( -- server ) start-server ; : start-tbl ( -- ) start-tbl-site wait-for-server ; MAIN: start-tbl