X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=include%2Fproto-def.h;h=a030a27b13f269bc9b53c2130181bcbd5898bdd1;hb=3a10185ae380956bd356c73f34138f97255bf7e6;hp=d1b0c3fb4f6179b7eaa6acfa2b10706f4ad0a39e;hpb=c2bda43c447016a20ed061078b0dff3e64d09940;p=src%2Fapp-framework-binder.git diff --git a/include/proto-def.h b/include/proto-def.h index d1b0c3fb..a030a27b 100644 --- a/include/proto-def.h +++ b/include/proto-def.h @@ -1,5 +1,5 @@ /* - alsajson-gw -- provide a REST/HTTP interface to ALSA-Mixer + proto-def.h -- provide a REST/HTTP interface Copyright (C) 2015, Fulup Ar Foll @@ -17,21 +17,26 @@ 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 int doRestApi(struct MHD_Connection *connection, AFB_session *session, const char *method, const char* url); -void initPlugins (AFB_session *session); +// 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); +PUBLIC char* getPostPath (AFB_request *request); -typedef AFB_plugin* (*AFB_pluginCB)(AFB_session *session); -PUBLIC AFB_plugin* afsvRegister (AFB_session *session); -PUBLIC AFB_plugin* dbusRegister (AFB_session *session); -PUBLIC AFB_plugin* alsaRegister (AFB_session *session); +// 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); @@ -39,6 +44,14 @@ 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);