141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
-
+
-
+
|
;;
(define (tt:start-server areapath dbfname handler)
;; is there already a server for this dbfile? Then exit.
(let* ((ttdat (make-tt areapath: areapath))
(servers (tt:find-server ttdat dbfname)))
(tt-handler-set! ttdat handler)
(if (null? servers)
(begin
(let* ((dbstruct (dbmod:open-dbmoddb areapath run-id (dbfile:db-init-db))))
(tt:start-tcp-server ttdat) ;; start the tcp-server which applies handler to incoming data
(tt:keep-running ttdat dbfname))
(tt:keep-running ttdat dbfname handler))
(begin
(debug:print 0 *default-log-port* "INFO: found server(s) already running for db "dbfname", "(string-intersperse servers ",")" Exiting.")
(exit)))))
;; find a port and start tcp-server
;;
(define (tt:start-tcp-server ttdat)
|