summaryrefslogtreecommitdiffstats
path: root/signal-composer-binding/signal-composer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'signal-composer-binding/signal-composer.cpp')
-rw-r--r--signal-composer-binding/signal-composer.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/signal-composer-binding/signal-composer.cpp b/signal-composer-binding/signal-composer.cpp
index 151de6c..2e4f221 100644
--- a/signal-composer-binding/signal-composer.cpp
+++ b/signal-composer-binding/signal-composer.cpp
@@ -84,6 +84,15 @@ SourceAPI* bindingApp::getSourceAPI(const std::string& api)
}
return nullptr;
}
+int bindingApp::initSourcesAPI()
+{
+ int err = 0;
+ for(auto& src: sourcesListV_)
+ {
+ err += src.init();
+ }
+ return err;
+}
std::vector<std::string> bindingApp::parseURI(const std::string& uri)
{
@@ -123,7 +132,7 @@ CtlActionT* bindingApp::convert2Action(const std::string& name, json_object* act
std::string fName = std::string(function).substr(6);
wrap_json_pack(&action, "{ss,ss,so*}",
"label", name.c_str(),
- "lua", fName,
+ "lua", fName.c_str(),
"args", functionArgsJ);
}
else if(startsWith(function, "api://"))
@@ -205,13 +214,13 @@ int bindingApp::loadSourcesAPI(CtlSectionT* section, json_object *sourcesJ)
{
int err = 0;
bindingApp& bApp = instance();
- json_object *sigCompJ = nullptr;
- // add the signal composer itself as source
if(sourcesJ)
{
+ json_object *sigCompJ = nullptr;
+ // add the signal composer itself as source
wrap_json_pack(&sigCompJ, "{ss,ss}",
- "api", "signal-composer",
+ "api", afbBindingV2.api,
"info", "Api on behalf the virtual signals are sent");
json_object_array_add(sourcesJ, sigCompJ);
@@ -232,7 +241,9 @@ int bindingApp::loadSourcesAPI(CtlSectionT* section, json_object *sourcesJ)
if ((err = bApp.loadOneSourceAPI(sourcesJ))) return err;
if (sigCompJ && (err = bApp.loadOneSourceAPI(sigCompJ))) return err;
}
-}
+ }
+ else
+ {err += bindingApp::instance().initSourcesAPI();}
return err;
}