diff options
Diffstat (limited to 'ctl-lib/ctl-event.c')
-rw-r--r-- | ctl-lib/ctl-event.c | 40 |
1 files changed, 6 insertions, 34 deletions
diff --git a/ctl-lib/ctl-event.c b/ctl-lib/ctl-event.c index d17bd3c..37590b2 100644 --- a/ctl-lib/ctl-event.c +++ b/ctl-lib/ctl-event.c @@ -23,18 +23,13 @@ #include "ctl-config.h" // Event dynamic API-V3 mode -#if defined AFB_BINDING_PREV3 || AFB_BINDING_VERSION == 3 -void CtrlDispatchApiEvent (AFB_ApiT apiHandle, const char *evtLabel, struct json_object *eventJ) { +void CtrlDispatchApiEvent (afb_api_t apiHandle, const char *evtLabel, struct json_object *eventJ) { int idx = 0; CtlActionT* actions = NULL; - AFB_ApiDebug (apiHandle, "Received event=%s, query=%s", evtLabel, json_object_get_string(eventJ)); + AFB_API_DEBUG (apiHandle, "Received event=%s, query=%s", evtLabel, json_object_get_string(eventJ)); // retrieve section config from api handle - #ifdef AFB_BINDING_PREV3 - CtlConfigT *ctrlConfig = (CtlConfigT*) afb_dynapi_get_userdata(apiHandle); - #elif AFB_BINDING_VERSION == 3 CtlConfigT *ctrlConfig = (CtlConfigT*) afb_api_get_userdata(apiHandle); - #endif for (idx = 0; ctrlConfig->sections[idx].key != NULL; ++idx) { @@ -46,7 +41,7 @@ void CtrlDispatchApiEvent (AFB_ApiT apiHandle, const char *evtLabel, struct json idx = ActionLabelToIndex(actions, evtLabel); if (idx < 0) { - AFB_ApiWarning(apiHandle, "CtlDispatchEvent: fail to find uid=%s in action event section", evtLabel); + AFB_API_WARNING(apiHandle, "CtlDispatchEvent: fail to find uid=%s in action event section", evtLabel); return; } @@ -57,40 +52,17 @@ void CtrlDispatchApiEvent (AFB_ApiT apiHandle, const char *evtLabel, struct json source.request = NULL; // Best effort ignoring error to exec corresponding action - (void) ActionExecOne (&source, &actions[idx], eventJ); + (void) ActionExecOne (&source, &actions[idx], json_object_get(eventJ)); } -#else -// In API-V2 controller config is unique and static -extern CtlConfigT *ctrlConfig; - -// call action attached to even name if any -void CtrlDispatchV2Event(const char *evtLabel, json_object *eventJ) { - CtlActionT* actions = ctrlConfig->sections[CTL_SECTION_EVENT].actions; - - int index= ActionLabelToIndex(actions, evtLabel); - if (index < 0) { - AFB_WARNING_V2("CtlDispatchEvent: fail to find uid=%s in action event section", evtLabel); - return; - } - - CtlSourceT source; - source.uid = actions[index].uid; - source.api = actions[index].api; - source.request = AFB_ReqNone; - - // Best effort ignoring error to exec corresponding action - (void) ActionExecOne (&source, &actions[index], eventJ); -} -#endif // onload section receive one action or an array of actions -int EventConfig(AFB_ApiT apiHandle, CtlSectionT *section, json_object *actionsJ) { +int EventConfig(afb_api_t apiHandle, CtlSectionT *section, json_object *actionsJ) { int err = 0; // Load time parse actions in config file if (actionsJ != NULL) { if ( (err= AddActionsToSection(apiHandle, section, actionsJ, 0)) ) { - AFB_ApiError (apiHandle, "EventLoad config fail processing actions for section %s", section->uid); + AFB_API_ERROR (apiHandle, "EventLoad config fail processing actions for section %s", section->uid); return err; } } |