diff options
author | Fulup Ar Foll <fulup@iot.bzh> | 2017-09-29 12:23:26 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2018-12-13 15:02:54 +0100 |
commit | e2a20090f37eb32cdf8beaf9c23cf33a9e9ab7f1 (patch) | |
tree | 333ebb3e87531da12fe447309e77a6fa57ba4165 /conf.d/project | |
parent | bfdf6b934660f086ab241a48330ddf22162c7fa3 (diff) |
Initial Commit as submodule
Diffstat (limited to 'conf.d/project')
-rw-r--r-- | conf.d/project/CMakeLists.txt | 24 | ||||
-rw-r--r-- | conf.d/project/json.d/CMakeLists.txt | 32 | ||||
-rw-r--r-- | conf.d/project/json.d/README.md | 23 | ||||
-rw-r--r-- | conf.d/project/json.d/onload-daemon-sample.json | 69 | ||||
-rw-r--r-- | conf.d/project/lua.d/CMakeLists.txt | 32 | ||||
-rw-r--r-- | conf.d/project/lua.d/doscript-helloworld.lua | 36 | ||||
-rw-r--r-- | conf.d/project/lua.d/onload-daemon-00-utils.lua | 86 | ||||
-rw-r--r-- | conf.d/project/lua.d/onload-daemon-01-init.lua | 48 | ||||
-rw-r--r-- | conf.d/project/lua.d/onload-daemon-03-controls.lua | 47 | ||||
-rw-r--r-- | conf.d/project/lua.d/onload-daemon-04-oncall.lua | 70 | ||||
-rw-r--r-- | conf.d/project/lua.d/onload-daemon-10-event.lua | 74 | ||||
-rw-r--r-- | conf.d/project/vscode.d/c_cpp_properties.json | 18 |
12 files changed, 0 insertions, 559 deletions
diff --git a/conf.d/project/CMakeLists.txt b/conf.d/project/CMakeLists.txt deleted file mode 100644 index fd4d454..0000000 --- a/conf.d/project/CMakeLists.txt +++ /dev/null @@ -1,24 +0,0 @@ -########################################################################### -# Copyright 2015, 2016, 2017 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. -########################################################################### - - - -# Include anything not starting with _ -PROJECT_SUBDIRS_ADD(${PROJECT_SRC_DIR_PATTERN}) - - diff --git a/conf.d/project/json.d/CMakeLists.txt b/conf.d/project/json.d/CMakeLists.txt deleted file mode 100644 index 8070997..0000000 --- a/conf.d/project/json.d/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -########################################################################### -# Copyright 2017 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. -########################################################################### - - -################################################## -# Control Policy Config file -################################################## -PROJECT_TARGET_ADD(ctl-config.d) - - file(GLOB XML_FILES "*.json") - - add_input_files("${XML_FILES}") - - SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES - LABELS "DATA" - OUTPUT_NAME ${TARGET_NAME} - ) diff --git a/conf.d/project/json.d/README.md b/conf.d/project/json.d/README.md deleted file mode 100644 index 209e708..0000000 --- a/conf.d/project/json.d/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# Controller binding configuration - -By default controller searches for a config filename with the same 'middlename' as daemon process. As an example if your process name is afb-daemon then middle name is 'daemon'. - -```bash -# Middlename is taken from process middlename. -onload-middlename-xxxxx.json -``` - -You may overload config search path with environement variables - -* AFB_BINDER_NAME: change patern config search path. 'export AFB_BINDER_NAME=sample' will make controller to search for a configfile name 'onload-sample-xxx.json'. -* CONTROL_CONFIG_PATH: change default reserch path for configuration. You may provide multiple directories separated by ':'. -* CONTROL_LUA_PATH: same as CONTROL_CONFIG_PATH but for Lua script files. - -Example to load a config name 'onload-myconfig-test.json' do - -```bash - AFB_BINDER_NAME='myconfig' afb-daemon --verbose ...' -``` - -Note: you may change search pattern for Lua script by adding 'ctlname=afb-middlename-xxx' in the metadata section of your config 'onload-*.json' - diff --git a/conf.d/project/json.d/onload-daemon-sample.json b/conf.d/project/json.d/onload-daemon-sample.json deleted file mode 100644 index cb6ca55..0000000 --- a/conf.d/project/json.d/onload-daemon-sample.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "$schema": "ToBeDone", - "metadata": { - "label": "sample-standalone-control", - "info": "Minimal Standalone Controller Config", - "name": "afb-sample-controller", - "version": "1.0" - }, - "onload": [{ - "label": "onload-default", - "info": "onload initialisation config", - "actions": - { - "label": "control-init", - "lua": "_Sample_Controller_Init", - "args": { - "xxxx": 1234, - "yyyy": "Bien le bonjours à vous", - "zzzz": "simple-evt" - } - } - }], - "controls": - [ - { - "label": "Button-Happy", - "actions": { - "label": "Action Happy", - "lua": "_Button_Happy", - "args": { - "button": 5678 - } - } - }, { - "label": "Button-UnHappy", - "actions": { - "label": "Action Unhappy", - "lua": "_Button_UnHappy", - "args": { - "button": "abcd" - } - } - } - ], - "events": - [ - { - "label": "Event1", - "actions": { - "label": "Action Event 1", - "lua": "_Event_Received", - "args": { - "evtname": "xxx" - } - } - }, - { - "label": "Event2", - "actions": { - "label": "Action Event 2", - "lua": "_Event_Received", - "args": { - "evtname": "yyy" - } - } - } - ] -} - diff --git a/conf.d/project/lua.d/CMakeLists.txt b/conf.d/project/lua.d/CMakeLists.txt deleted file mode 100644 index 5cd61f2..0000000 --- a/conf.d/project/lua.d/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -########################################################################### -# Copyright 2017 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. -########################################################################### - - -################################################## -# Control Policy Config file -################################################## -PROJECT_TARGET_ADD(ctl-lua.d) - - file(GLOB LUA_FILES "*.lua") - - add_input_files("${LUA_FILES}") - - SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES - LABELS "DATA" - OUTPUT_NAME ${TARGET_NAME} - ) diff --git a/conf.d/project/lua.d/doscript-helloworld.lua b/conf.d/project/lua.d/doscript-helloworld.lua deleted file mode 100644 index e722db7..0000000 --- a/conf.d/project/lua.d/doscript-helloworld.lua +++ /dev/null @@ -1,36 +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. - - - Simple API script to be use with AGL control LuaDoCall API - - After the script is loaded by lua_docall - - Controller start function=xxxx where xxxx is taken from script filename doscript-xxxx-anything - ---]] - -function _helloworld (request, query) - - AFB:notice ("LUA HelloWorld: Simple test query=%s", query); - - if (query == nil) then - AFB:notice ("LUA HelloWorld:FX query should not be empty"); - AFB:fail (request, "LUA HelloWorld: query should not be empty"); - else - AFB:notice ("LUA HelloWorld:OK query=%s", query); - AFB:success (request, {arg0="Demat", arg1="Bonjours", arg2="Gootentag", arg3="Morning"}); - end - -end diff --git a/conf.d/project/lua.d/onload-daemon-00-utils.lua b/conf.d/project/lua.d/onload-daemon-00-utils.lua deleted file mode 100644 index 29d2c70..0000000 --- a/conf.d/project/lua.d/onload-daemon-00-utils.lua +++ /dev/null @@ -1,86 +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. - - Note: this file should be called before any other to assert declare function - is loaded before anything else. - - References: - http://lua-users.org/wiki/DetectingUndefinedVariables - ---]] - - ---=================================================== ---= Niklas Frykholm --- basically if user tries to create global variable --- the system will not let them!! --- call GLOBAL_lock(_G) --- ---=================================================== -function GLOBAL_lock(t) - local mt = getmetatable(t) or {} - mt.__newindex = lock_new_index - setmetatable(t, mt) -end - ---=================================================== --- call GLOBAL_unlock(_G) --- to change things back to normal. ---=================================================== -function GLOBAL_unlock(t) - local mt = getmetatable(t) or {} - mt.__newindex = unlock_new_index - setmetatable(t, mt) -end - -function lock_new_index(t, k, v) - if (string.sub(k,1,1) ~= "_") then - GLOBAL_unlock(_G) - error("GLOBALS are locked -- " .. k .. - " must be declared local or prefix with '_' for globals.", 2) - else - rawset(t, k, v) - end -end - -function unlock_new_index(t, k, v) - rawset(t, k, v) -end - --- return serialised version of printable table -function Dump_Table(o) - if type(o) == 'table' then - local s = '{ ' - for k,v in pairs(o) do - if type(k) ~= 'number' then k = '"'..k..'"' end - s = s .. '['..k..'] = ' .. Dump_Table(v) .. ',' - end - return s .. '} ' - else - return tostring(o) - end -end - - --- simulate C prinf function -printf = function(s,...) - io.write(s:format(...)) - io.write("\n") - return -end - --- lock global variable -GLOBAL_lock(_G) diff --git a/conf.d/project/lua.d/onload-daemon-01-init.lua b/conf.d/project/lua.d/onload-daemon-01-init.lua deleted file mode 100644 index 26ff08a..0000000 --- a/conf.d/project/lua.d/onload-daemon-01-init.lua +++ /dev/null @@ -1,48 +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. ---]] - --- Global variable SHOULD start with _ -_Global_Context={} - ---[[ - This function is call during controller init phase as describe in onload-daemon-sample.json - It receives two argument 1st one is the source (here on load) second one is the arguments - as expose in config file. - - In this sample we create an event that take the name of args["zzzz"], the resulting handle - is save into _Global_Context for further use. - - Note: init functions are not call from a client and thus do not receive query - ---]] -function _Sample_Controller_Init(source, control) - - printf ("[-- Sample_Controller_Init --] source=%d control=%s", source, Dump_Table(control)) - - -- if no argument return now - if (control==nil or control["zzzz"]==nil) then - printf ("[-- Sample_Controller_Init --] no event name given") - return - end - - -- set a count to make more visible each call - _Global_Context["counter"]=0 - - -- just for fun create an event - _Global_Context["event"]=AFB:evtmake(control["zzzz"]) - -end diff --git a/conf.d/project/lua.d/onload-daemon-03-controls.lua b/conf.d/project/lua.d/onload-daemon-03-controls.lua deleted file mode 100644 index e9c8b51..0000000 --- a/conf.d/project/lua.d/onload-daemon-03-controls.lua +++ /dev/null @@ -1,47 +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. - - Following function are called when a client activate a control with - controller api -> APi=control VERB=dispatch - arguments are - - source (0) when requesting the control (-1) when releasing - - control comme from config given with 'args' in onload-middlename-xxxxx.json - - client is the argument part of the query as providing by client requesting the control. - ---]] - - - --- Simple Happy(granted) Control -function _Button_Happy(source, control, client) - - -- print argument to make sure we understant what we get - printf ("[-- _Button_Happy --] source=%d control=%s client=%s", source, Dump_Table(client), Dump_Table(control)) - - AFB:notice ("[-- _Button_Happy --] To Be Done") - return 0 -- control granted -end - - --- Simple UnHappy(debu) Control -function _Button_UnHappy(source, control, client) - - -- print argument to make sure we understant what we get - printf ("[-- _Button_UnHappy --] source=%d control=%s client=%s", source, Dump_Table(client), Dump_Table(control)) - - AFB:error ("[-- _Button_UnHappy --] To Be Done") - return 1 -- control is refused -end diff --git a/conf.d/project/lua.d/onload-daemon-04-oncall.lua b/conf.d/project/lua.d/onload-daemon-04-oncall.lua deleted file mode 100644 index b450932..0000000 --- a/conf.d/project/lua.d/onload-daemon-04-oncall.lua +++ /dev/null @@ -1,70 +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. - - - Provide sample LUA routines to be used with AGL control "lua_docall" API ---]] - ---global counter to keep track of calls -_count=0 - --- Display receive arguments and echo them to caller -function _Simple_Echo_Args (request, args) - _count=_count+1 - AFB:notice("LUA OnCall Echo Args count=%d args=%s", count, args) - - print ("--inlua-- args=", Dump_Table(args)) - - local response={ - ["count"]=_count, - ["args"]=args, - } - - -- fulup Embdeded table ToeDone AFB:success (request, response) - AFB:success (request, {["func"]="Simple_Echo_Args", ["ret1"]=5678, ["ret2"]="abcd"}) -end - -local function Test_Async_CB (request, result, context) - response={ - ["result"]=result, - ["context"]=context, - } - - AFB:notice ("Test_Async_CB result=%s context=%s", result, context) - AFB:success (request, response) -end - -function _Test_Call_Async (request, args) - local context={ - ["value1"]="abcd", - ["value2"]=1234 - } - - AFB:notice ("Test_Call_Async args=%s cb=Test_Async_CB", args) - AFB:service("monitor","ping", "Test_Async_CB", context) -end - -function _Simple_Monitor_Call (request, args) - - AFB:notice ("_Simple_Server_Call args=%s", args) - local err, result= AFB:servsync ("monitor","get", args) - if (err) then - AFB:fail ("AFB:service_call_sync fail"); - else - AFB:success (request, result["response"]) - end -end - diff --git a/conf.d/project/lua.d/onload-daemon-10-event.lua b/conf.d/project/lua.d/onload-daemon-10-event.lua deleted file mode 100644 index 474ebe0..0000000 --- a/conf.d/project/lua.d/onload-daemon-10-event.lua +++ /dev/null @@ -1,74 +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. - - - Provide Sample Timer Handing to push event from LUA ---]] - --- Create event on Lua script load -_MyContext={} - --- WARNING: call back are global and should start with '_' -function _Timer_Test_CB (timer, context) - - local evtinfo= AFB:timerget(timer) - printf ("[-- _Timer_Test_C --] evtInfo=%s", Dump_Table(evtinfo)) - - --send an event an event with count as value - AFB:evtpush (_MyContext["event"], {["label"]= evtinfo["label"], ["count"]=evtinfo["count"], ["info"]=context["info"]}) - - -- note when timerCB return!=0 timer is kill - return 0 - -end - --- sendback event depending on count and delay -function _Simple_Timer_Test (request, client) - - local context = { - ["info"]="My 1st private Event", - } - - -- if event does not exit create it now. - if (_MyContext["event"] == nil) then - _MyContext["event"]= AFB:evtmake(client["label"]) - end - - -- if delay not defined default is 5s - if (client["delay"]==nil) then client["delay"]=5000 end - - -- if count is not defined default is 10 - if (client["count"]==nil) then client["count"]=10 end - - -- we could use directly client but it is a sample - local myTimer = { - ["label"]=client["label"], - ["delay"]=client["delay"], - ["count"]=client["count"], - } - AFB:notice ("Test_Timer myTimer=%s", myTimer) - - -- subscribe to event - AFB:subscribe (request, _MyContext["event"]) - - -- settimer take a table with delay+count as input (count==0 means infinite) - AFB:timerset (myTimer, "_Timer_Test_CB", context) - - -- nothing special to return send back - AFB:success (request, myTimer) - - return 0 -end diff --git a/conf.d/project/vscode.d/c_cpp_properties.json b/conf.d/project/vscode.d/c_cpp_properties.json deleted file mode 100644 index 5512cb3..0000000 --- a/conf.d/project/vscode.d/c_cpp_properties.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "configurations": [ - { - "name": "null", - "includePath": [], - "defines": [], - "browse": { - "path": [ - "${workspaceRoot}" - ], - "limitSymbolsToIncludedHeaders": true, - "databaseFilename": "" - }, - "intelliSenseMode": "clang-x64" - } - ], - "version": 2 -}
\ No newline at end of file |