Megatest

Diff
Login

Differences From Artifact [563b0aba54]:

To Artifact [e550851d81]:


105
106
107
108
109
110
111
112

113
114
115
116
117
118
119
120

121

122
123


124
125
126
127
128
129
130
105
106
107
108
109
110
111

112
113
114
115
116
117
118
119
120
121
122
123
124

125
126
127
128
129
130
131
132
133







-
+








+

+

-
+
+







    testmeta-update-field

    ;; TASKS
    tasks-add
    tasks-set-state-given-param-key
    ))

;; These are called by the server on recipt of /api calls
;; These are called by the server on receipt of /api calls
;;    - keep it simple, only return the actual result of the call, i.e. no meta info here
;;
;;    - returns #( flag result )
;;
(define (api:execute-requests dbstruct dat)
  (handle-exceptions
   exn
   (let ((call-chain (get-call-chain)))
     (debug:print 0 *default-log-port* "------------------------------")
     (debug:print 0 *default-log-port* "WARNING: api:execute-requests received an exception from peer")
     (debug:print 0 *default-log-port* "dbstruct="dbstruct"  dat="dat)
     (print-call-chain (current-error-port))
     (debug:print 0 *default-log-port* " message: "  ((condition-property-accessor 'exn 'message) exn))       
     (debug:print 0 *default-log-port* " message: "  ((condition-property-accessor 'exn 'message) exn))
     (debug:print 0 *default-log-port* "------------------------------")
     (vector #f (vector exn call-chain dat))) ;; return some stuff for debug if an exception happens
   (if (not (vector? dat))                    ;; it is an error to not receive a vector
       (vector #f #f "remote must be called with a vector")       
       (vector                                   ;; return a vector + the returned data structure
	#t 
	(let* ((cmd-in (vector-ref dat 0))
	       (cmd    (if (symbol? cmd-in)
292
293
294
295
296
297
298
299
295
296
297
298
299
300
301








-
    ;;  (if (or (string? res)
    ;;          (list?   res)
    ;;          (number? res)
    ;;          (boolean? res))
    ;;      res 
    ;;      (list "ERROR, not string, list, number or boolean" 1 cmd params res)))))
    (db:obj->string res transport: 'http)))