- afb_req request = afb_req_unstore(prequest);
- if (status < 0)
- afb_req_fail(request, "failed", json_object_to_json_string(object));
- else
- afb_req_success(request, json_object_get(object), NULL);
- afb_req_unref(request);
-}
-
-static void subcall (afb_req request)
-{
- const char *api = afb_req_value(request, "api");
- const char *verb = afb_req_value(request, "verb");
- const char *args = afb_req_value(request, "args");
- json_object *object = api && verb && args ? json_tokener_parse(args) : NULL;
-
- if (object == NULL)
- afb_req_fail(request, "failed", "bad arguments");
- else
- afb_req_subcall(request, api, verb, object, subcallcb, afb_req_store(request));
-}
-
-static void subcallreqcb (void *prequest, int status, json_object *object, afb_req request)
-{
- if (status < 0)
- afb_req_fail(request, "failed", json_object_to_json_string(object));
- else
- afb_req_success(request, json_object_get(object), NULL);