X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=include%2Flocal-def.h;h=6d2194067f83cd0dacde33b974cb8de0f2a6491e;hb=c4ec16f3868b099f2904b54be78bcd09d3760a24;hp=9c58441767c9bb982dabc8e65b4e88679814dd86;hpb=5d293eac235f2d59eccc9b23de803821b821c12e;p=src%2Fapp-framework-binder.git diff --git a/include/local-def.h b/include/local-def.h index 9c584417..6d219406 100644 --- a/include/local-def.h +++ b/include/local-def.h @@ -63,6 +63,7 @@ #define DEFLT_CACHE_TIMEOUT 100000 // default Static File Chache [Client Side Cache 100000~=1day] #define DEFLT_AUTH_TOKEN NULL // expect for debug should == NULL #define DEFLT_HTTP_TIMEOUT 15 // Max MibMicroHttp timeout +#define AFB_MAX_PLUGINS 20 // Max number of plugins for a given binder typedef int BOOL; #ifndef FALSE @@ -97,7 +98,7 @@ extern char *ERROR_LABEL[]; typedef json_object* (*AFB_apiCB)(); -typedef void (*AFB_freeCtxCB)(void*, char*); +typedef void (*AFB_freeCtxCB)(void*, void*, char*); // Error code are requested through function to manage json usage count typedef struct { @@ -106,7 +107,7 @@ typedef struct { json_object *json; } AFB_errorT; -typedef enum {AFB_POST_NONE=0, AFB_POST_JSON, AFB_POST_FORM} AFB_PostType; +typedef enum {AFB_POST_NONE=0, AFB_POST_JSON, AFB_POST_FORM, AFB_POST_EMPTY} AFB_PostType; // Post Upload File Handle typedef struct { @@ -170,7 +171,7 @@ typedef struct { int localhostOnly; int httpdPort; char *smack; // smack label - char *plugins; // list of requested plugins + char *ldpaths; // list of plugins directories char *rootdir; // base dir for httpd file download char *rootbase; // Angular HTML5 base URL char *rootapi; // Base URL for REST APIs @@ -237,11 +238,12 @@ typedef struct { typedef struct { const char *uuid; const char *url; - char *plugin; + char *prefix; // plugin convivial name char *api; AFB_PostRequest *post; json_object *jresp; void *context; // Hold Client Context when using session + void *handle; // provide callback and easy access to plugin int restfull; // request is resfull [uuid token provided] int errcode; // http error code sigjmp_buf checkPluginCall; // context save for timeout set/longjmp