diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-08-21 10:23:18 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-08-21 10:23:18 +0200 |
commit | 88d0b8c02eaaac8843f184e379fc5a19250295e5 (patch) | |
tree | 4893d2b5cb0fdbddf0357ebd7d32009e73856cec /Controler-afb/ctl-plugin-sample.c | |
parent | ba709f088f5a4718b7096003ab19083af4681155 (diff) | |
parent | d51d083be8e34000cd00ce979445eacb45a16e97 (diff) |
Merge branch 'fulup-dev'
Change-Id: I7dc6859767ac5919cf383e33bd2cf3a98698d9b4
Diffstat (limited to 'Controler-afb/ctl-plugin-sample.c')
-rw-r--r-- | Controler-afb/ctl-plugin-sample.c | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/Controler-afb/ctl-plugin-sample.c b/Controler-afb/ctl-plugin-sample.c deleted file mode 100644 index 837ad9d..0000000 --- a/Controler-afb/ctl-plugin-sample.c +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (C) 2016 "IoT.bzh" - * Author Fulup Ar Foll <fulup@iot.bzh> - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Sample plugin for Controller - */ - - -#define _GNU_SOURCE -#include <stdio.h> -#include <string.h> - -#include "ctl-binding.h" - -#define MY_PLUGIN_MAGIC 987654321 - -typedef struct { - int magic; - int count; -} MyPluginCtxT; - -// Declare this sharelib as a Controller Plugin -CTL_PLUGIN_REGISTER("MyCtlSamplePlugin"); - -STATIC const char* jsonToString (json_object *valueJ) { - const char *value; - if (valueJ) - value=json_object_get_string(valueJ); - else - value="NULL"; - - return value; -} - -// Call at initialisation time -PUBLIC void* CtlPluginOnload(char* label, char* version, char* info) { - MyPluginCtxT *pluginCtx= (MyPluginCtxT*)calloc (1, sizeof(MyPluginCtxT)); - pluginCtx->magic = MY_PLUGIN_MAGIC; - pluginCtx->count = -1; - - AFB_NOTICE ("CONTROLER-PLUGIN-SAMPLE:Onload label=%s version=%s info=%s", label, info, version); - return (void*)pluginCtx; -} - -PUBLIC int SamplePolicyInit (DispatchActionT *action, json_object *argsJ, void *context) { - MyPluginCtxT *pluginCtx= (MyPluginCtxT*)context; - if (!context || pluginCtx->magic != MY_PLUGIN_MAGIC) { - AFB_ERROR("CONTROLER-PLUGIN-SAMPLE:SamplePolicyInit (Hoops) Invalid Sample Plugin Context"); - return -1; - }; - - pluginCtx->count = 0; - AFB_NOTICE ("CONTROLER-PLUGIN-SAMPLE:Init label=%s args=%s\n", action->label, jsonToString(action->argsJ)); - return 0; -} - -PUBLIC int sampleControlMultimedia (DispatchActionT *action, json_object *queryJ, void *context) { - MyPluginCtxT *pluginCtx= (MyPluginCtxT*)context; - - if (!context || pluginCtx->magic != MY_PLUGIN_MAGIC) { - AFB_ERROR("CONTROLER-PLUGIN-SAMPLE:sampleControlMultimedia (Hoops) Invalid Sample Plugin Context"); - return -1; - }; - pluginCtx->count++; - AFB_NOTICE ("CONTROLER-PLUGIN-SAMPLE:sampleControlMultimedia SamplePolicyCount action=%s args=%s query=%s count=%d" - , action->label, jsonToString(action->argsJ), jsonToString(queryJ), pluginCtx->count); - return 0; -} - -PUBLIC int sampleControlNavigation (DispatchActionT *action, json_object *queryJ, void *context) { - MyPluginCtxT *pluginCtx= (MyPluginCtxT*)context; - - if (!context || pluginCtx->magic != MY_PLUGIN_MAGIC) { - AFB_ERROR("CONTROLER-PLUGIN-SAMPLE:sampleControlNavigation (Hoops) Invalid Sample Plugin Context"); - return -1; - }; - pluginCtx->count++; - AFB_NOTICE ("CONTROLER-PLUGIN-SAMPLE:sampleControlNavigation SamplePolicyCount action=%s args=%s query=%s count=%d" - ,action->label, jsonToString(action->argsJ), jsonToString(queryJ), pluginCtx->count); - return 0; -} - -PUBLIC int SampleControlEvent (DispatchActionT *action, json_object *queryJ, void *context) { - MyPluginCtxT *pluginCtx= (MyPluginCtxT*)context; - - if (!context || pluginCtx->magic != MY_PLUGIN_MAGIC) { - AFB_ERROR("CONTROLER-PLUGIN-SAMPLE:cousampleControlMultimediant (Hoops) Invalid Sample Plugin Context"); - return -1; - }; - pluginCtx->count++; - AFB_NOTICE ("CONTROLER-PLUGIN-SAMPLE:sampleControlMultimedia SamplePolicyCount action=%s args=%s query=%s count=%d" - ,action->label, jsonToString(action->argsJ), jsonToString(queryJ), pluginCtx->count); - return 0; -} |