X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=include%2Fproto-def.h;h=0f5ca0482f7b7b63d9d62d58aa5124c4fe523d54;hb=e3320f303c4eb8f7fe0fac69bfa9ce36d9916930;hp=934bf30f3e6d617791e36c9fd2ed52859c584d5d;hpb=cd054544444e92e7695dd288f0c04b7af0f668e3;p=src%2Fapp-framework-binder.git diff --git a/include/proto-def.h b/include/proto-def.h index 934bf30f..0f5ca048 100644 --- a/include/proto-def.h +++ b/include/proto-def.h @@ -17,37 +17,56 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: $ */ -// Rest-api -PUBLIC json_object* pingSample (AFB_plugin *plugin, AFB_session *session, AFB_request *post); -PUBLIC const char* getQueryValue (AFB_request * request, char *name); -PUBLIC AFB_plugin *afsvRegister (AFB_session *session); -PUBLIC int doRestApi(struct MHD_Connection *connection, AFB_session *session, const char *method, const char* url); +// helper-api +PUBLIC json_object* getPingTest(AFB_request *request); +PUBLIC const char* getQueryValue (const AFB_request * request, const char *name); +PUBLIC int getQueryAll(AFB_request * request, char *query, size_t len); +PUBLIC AFB_PostHandle* getPostHandle (AFB_request *request); +PUBLIC json_object* getPostFile (AFB_request *request, AFB_PostItem *item, char* destination) ; +PUBLIC AFB_PostCtx* getPostContext (AFB_request *request); + +// rest-api +PUBLIC void endPostRequest(AFB_PostHandle *posthandle); +PUBLIC int doRestApi(struct MHD_Connection *connection, AFB_session *session, const char* url, const char *method + , const char *upload_data, size_t *upload_data_size, void **con_cls); + +void initPlugins (AFB_session *session); + +typedef AFB_plugin* (*AFB_pluginCB)(); +PUBLIC AFB_plugin* pluginRegister (); // Session handling -PUBLIC AFB_ERROR sessionCheckdir (AFB_session *session); +PUBLIC AFB_error sessionCheckdir (AFB_session *session); PUBLIC json_object *sessionList (AFB_session *session, AFB_request *request); PUBLIC json_object *sessionToDisk (AFB_session *session, AFB_request *request, char *name,json_object *jsonSession); PUBLIC json_object *sessionFromDisk (AFB_session *session, AFB_request *request, char *name); +PUBLIC AFB_error ctxTokenRefresh (AFB_clientCtx *clientCtx, AFB_request *request); +PUBLIC AFB_error ctxTokenCreate (AFB_clientCtx *clientCtx, AFB_request *request); +PUBLIC AFB_error ctxTokenCheck (AFB_clientCtx *clientCtx, AFB_request *request); +PUBLIC AFB_error ctxTokenReset (AFB_clientCtx *clientCtx, AFB_request *request); +PUBLIC AFB_clientCtx *ctxClientGet (AFB_request *request, int idx); +PUBLIC void ctxStoreInit (int); + + // Httpd server -PUBLIC AFB_ERROR httpdStart (AFB_session *session); -PUBLIC AFB_ERROR httpdLoop (AFB_session *session); +PUBLIC AFB_error httpdStart (AFB_session *session); +PUBLIC AFB_error httpdLoop (AFB_session *session); PUBLIC void httpdStop (AFB_session *session); // config management PUBLIC char *configTime (void); PUBLIC AFB_session *configInit (void); -PUBLIC json_object *jsonNewMessage (AFB_ERROR level, char* format, ...); -PUBLIC json_object *jsonNewStatus (AFB_ERROR level); +PUBLIC json_object *jsonNewMessage (AFB_error level, char* format, ...); +PUBLIC json_object *jsonNewStatus (AFB_error level); PUBLIC json_object *jsonNewjtype (void); -PUBLIC json_object *jsonNewMessage (AFB_ERROR level, char* format, ...); +PUBLIC json_object *jsonNewMessage (AFB_error level, char* format, ...); PUBLIC void jsonDumpObject (json_object * jObject); -PUBLIC AFB_ERROR configLoadFile (AFB_session * session, AFB_config *cliconfig); +PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig); PUBLIC void configStoreFile (AFB_session * session);