diff --git a/extra/time-server/authors.txt b/extra/time-server/authors.txt new file mode 100644 index 0000000000..d4f5d6b3ae --- /dev/null +++ b/extra/time-server/authors.txt @@ -0,0 +1 @@ +Slava Pestov \ No newline at end of file diff --git a/extra/time-server/time-server-tests.factor b/extra/time-server/time-server-tests.factor new file mode 100644 index 0000000000..a9fac2d9d8 --- /dev/null +++ b/extra/time-server/time-server-tests.factor @@ -0,0 +1,4 @@ +! Copyright (C) 2008 Slava Pestov. +! See http://factorcode.org/license.txt for BSD license. +USING: tools.test time-server ; +IN: time-server.tests diff --git a/extra/time-server/time-server.factor b/extra/time-server/time-server.factor new file mode 100644 index 0000000000..28debf17cd --- /dev/null +++ b/extra/time-server/time-server.factor @@ -0,0 +1,19 @@ +! Copyright (C) 2008 Slava Pestov. +! See http://factorcode.org/license.txt for BSD license. +USING: io io.servers.connection accessors threads +calendar calendar.format ; +IN: time-server + +: handle-time-client ( -- ) + now timestamp>rfc822 print ; + +: <time-server> ( -- threaded-server ) + <threaded-server> + "time-server" >>name + 1234 >>insecure + [ handle-time-client ] >>handler ; + +: start-time-server ( -- threaded-server ) + <time-server> [ start-server ] in-thread ; + +MAIN: start-time-server