294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
|
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
|
-
+
+
|
;; (remote-conndat-set! runremote #f))
;; Killing associated server to allow clean retry.")
;; (tasks:kill-server-run-id run-id) ;; better to kill the server in the logic that called this routine?
(mutex-unlock! *http-mutex*)
;; (signal (make-composite-condition
;; (make-property-condition 'commfail 'message "failed to connect to server")))
;; "communications failed"
(close-all-connections!)
;; (close-all-connections!)
(close-connection! fullurl)
(db:obj->string #f))
(with-input-from-request ;; was dat
fullurl
(list (cons 'key (or server-id "thekey"))
(cons 'cmd cmd)
(cons 'params sparams))
read-string))
|
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
|
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
|
+
+
-
+
|
(if (vector? server-dat)
(let ((api-dat (http-transport:server-dat-get-api-uri server-dat)))
(handle-exceptions
exn
(begin
(print-call-chain *default-log-port*)
(debug:print-error 0 *default-log-port* " closing connection failed with error: " ((condition-property-accessor 'exn 'message) exn) ", exn=" exn))
(if (args:any-defined? "-server" "-execute" "-run")
(debug:print-info 0 *default-log-port* "Closing connections to "api-dat))
(close-connection! api-dat)
;; (close-idle-connections!)
(close-connection! (http-transport:server-dat-make-url server-dat))
(remote-conndat-set! runremote #f)
#t))
#f)))
(define (make-http-transport:server-dat)(make-vector 6))
(define (http-transport:server-dat-get-iface vec) (vector-ref vec 0))
|