Skip to content

Instantly share code, notes, and snippets.

@dcguim
Last active August 13, 2017 09:06
Show Gist options
  • Save dcguim/d86686896f1a574de68f6bc7bfb63a4c to your computer and use it in GitHub Desktop.
Save dcguim/d86686896f1a574de68f6bc7bfb63a4c to your computer and use it in GitHub Desktop.
Applying the given arguments to def-neo4j-fun
(apply (eval
	(cadr (macroexpand-1 '(def-neo4j-fun create-node (properties)
				:post
				(:uri-spec (format nil "node"))
				(:encode properties :string)
				(:status-handlers
				 (201 (decode-neo4j-json-output body))
				 (400 (error 'invalid-data-sent-error
					     :uri uri :json json)))))))
       '(:properties ((:name . "Dan")))))

The function in the error handler returns Bad Request Error 400, while the top-level say it`s instead an Unauthorized Error 401, but I don`t think that is the case because I`ve configured my host and port with neo4j`s documentation (src/globals.lisp).

Unknown status 401 returned for node
   [Condition of type UNKNOWN-RETURN-TYPE-ERROR]
   
Backtrace:
   0: ((:METHOD HANDLE-REQUEST (BASIC-HANDLER T T)) #<BASIC-HANDLER {1003F17803}> #S(NEO4J-REQUEST :METHOD :POST :URI "node" :PAYLOAD "{\"name\":\"Dan\"}") ((201 #<FUNCTION (LAMBDA #1=# :IN CREATE-NODE) {10..
      Locals:
        BODY = #(123 10 32 32 34 101 ...)
        ERROR-HANDLERS = ((201 #<FUNCTION (LAMBDA # :IN CREATE-NODE) {1003F088AB}>) (400 #<FUNCTION (LAMBDA # :IN CREATE-NODE) {1003F087FB}>))
        HANDLER = #<BASIC-HANDLER {1003F17803}>
        IT = NIL
        REQUEST = #S(NEO4J-REQUEST :METHOD :POST :URI "node" :PAYLOAD "{\"name\":\"Dan\"}")
        STATUS = 401
  1: (SB-INT:SIMPLE-EVAL-IN-LEXENV (APPLY (EVAL (CADR #)) (QUOTE (:PROPERTIES #))) #<NULL-LEXENV>)
      Locals:
        SB-DEBUG::ARG-0 = (APPLY (EVAL (CADR (MACROEXPAND-1 '#))) '(:PROPERTIES ((:NAME . "Dan"))))
        SB-DEBUG::ARG-1 = #<NULL-LEXENV>
  2: (EVAL (APPLY (EVAL (CADR #)) (QUOTE (:PROPERTIES #))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment