X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fconfig.c;h=ae1830d1d86f4b9b2f093d6a3ef263264e90caf6;hb=b55efc33fb8df8b0518570b2584b6da9abb3221b;hp=6691ca030d82686d697dd6df43242c491064659a;hpb=6458b6eb67426974e9a3b8eed1f5620f0de0efc5;p=src%2Fapp-framework-binder.git diff --git a/src/config.c b/src/config.c index 6691ca03..ae1830d1 100644 --- a/src/config.c +++ b/src/config.c @@ -64,6 +64,10 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { // default HTTP port if (cliconfig->httpdPort == 0) session->config->httpdPort=1234; else session->config->httpdPort=cliconfig->httpdPort; + + // default Plugin API timeout + if (cliconfig->apiTimeout == 0) session->config->apiTimeout=10; + else session->config->apiTimeout=cliconfig->apiTimeout; // cache timeout default one hour if (cliconfig->cacheTimeout == 0) session->config->cacheTimeout=3600; @@ -206,9 +210,15 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { if (!cliconfig->cacheTimeout && json_object_object_get_ex (AFBConfig, "cachetimeout", &value)) { session->config->cacheTimeout = json_object_get_int (value); } - // cacheTimeout is an interger but HTTPd wants it as a string + + if (!cliconfig->apiTimeout && json_object_object_get_ex (AFBConfig, "apitimeout", &value)) { + session->config->apiTimeout = json_object_get_int (value); + } + + // cacheTimeout is an integer but HTTPd wants it as a string snprintf (cacheTimeout, sizeof (cacheTimeout),"%d", session->config->cacheTimeout); session->cacheTimeout = cacheTimeout; // httpd uses cacheTimeout string version + json_object_put (AFBConfig); // decrease reference count to free the json object @@ -241,6 +251,7 @@ PUBLIC void configStoreFile (AFB_session * session) { json_object_object_add (AFBConfig, "setuid" , json_object_new_int (session->config->setuid)); json_object_object_add (AFBConfig, "localhostonly" , json_object_new_int (session->config->localhostOnly)); json_object_object_add (AFBConfig, "cachetimeout" , json_object_new_int (session->config->cacheTimeout)); + json_object_object_add (AFBConfig, "apitimeout" , json_object_new_int (session->config->apiTimeout)); err = json_object_to_file (session->config->configfile, AFBConfig); json_object_put (AFBConfig); // decrease reference count to free the json object