Age | Commit message (Collapse) | Author | Files | Lines |
|
Use specific binder's event handlers which allows you to bind a callback with
an incoming event based on a pattern matching. This replace the global
event listener and internal callback search algorythm which is now
delegated to the binder.
Clean unused constructor
Bug-AGL: SPEC-1968
Change-Id: I4b22c003661189fb71498efc4d9021c1a54ae866
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I8a5bc18a0bf8ad05ce83b6ff64d4329d42bff2b0
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Remove app-template in .gitmodules
Change-Id: Ie248e1a43dfda832acca830a7fab0bd8c82fd86c
Signed-off-by: Frederic Marec <frederic.marec@iot.bzh>
|
|
Change-Id: I4c02d4a576459a0a1915893fa5526d4c8cffe6e6
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Update basic configurations files with the latest controller key used.
There were update not followed since a rework a how an action is load
from a configuration file which does not use anymore 2 key 'uri' + 'function'
but only one 'action'.
Change-Id: I455f69064bd91dd3b845e83d0904aca1c11cacb8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Bug-AGL SPEC-1682
Change-Id: I1578d1e71d66813ed45dfac80b2fceee7c012150
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
The feature "urn:AGL:widget:required-binding" is now
preferred to the feature "urn:AGL:widget:required-api"
for requiring a local binding.
Bug-AGL: SPEC-1800
Change-Id: I0a257cf66b11b944cfce90c270827da1413c8eed
Signed-off-by: Jose Bollo <jose.bollo@iot.bzh>
|
|
And remove unnecessary dependency upon libmicrohttpd
Change-Id: I10de18065517a6033d75519ced16a4ee04518851
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This adds some basic tests about adding dummy sources into
the signal composer in addition of signals.
Change-Id: I028faa612b749866a3ab986a2f46fe00dd2d7884
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I9072205022d9ef3baec3868ef0bc6a912013ac59
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This correct the retention value extraction as an 'int' instead
of a Json object. Also made 'api' field mandatory.
Format and improve log messages.
Change-Id: I00b337839a49fc1952be8589b48bf1a38b863549
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This use the dedicated script to launch tests on native
development environment and get rid of the dedicated script
afb-test.sh.
Change-Id: Ic254a3df90939df683e6d2ec5c72afcebc963b75
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Answer a failure when attempting to subscibe a non-existent
signal but don't report error on unsubscription.
Change-Id: Iac4bfe52ce84b47fbfa5717cd9ee2bf02231f52f
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This reports errors at signals getSignals action call
and removed incorrect signals from the source. This allows
the binding to correctly respond to the user if there was an
error in its signal definitions.
Change-Id: I7779ab9339a979fcb2b7b41f8ebf4aa27b8af3a1
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Here, assuming the absolute path leads to a non existent file
then only take the file name and do a research in the default
search path given by environment var or pre-processor defined
variables.
Change-Id: Id57428141be908cda65b07f66ca59568708d3608
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Submodule ctl-utilities 02bbf59..d6eb01e:
> Change loading configuration object behavior
> app-controller-submodule doc: Changed doc to fit new format.
> Fix: compatibility with binder FF.RC4
Change-Id: I21efecc6de8e8db91827b83cdf26ab62cb52d1ce
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
txc-binding.c is moving to version 3 in order to be compatible
with app-afb-test
fix some typo error:
- rename txc api into txc-binding
- wrong path files
Change-Id: I9c59cbc59a457611fbf495a64f116170ef7898d8
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
|
|
- split book.json to match new format
- changed description in README.md
- remove useless files
Change-Id: I235c6f033ad12eeac86cab16f4c311e61ca60351
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
|
|
fix multiples errors, rename txc into txc-binding
Change-Id: I9cd32cf157e407d98293bc869ed08cc93518a555
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
|
|
one binder for afb-test binding
another for signal-composer binding
Change-Id: Ie049715775e315eeb4e2d01e178ff55bb68f36e0
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
|
|
Change-Id: I9b4da627485ad16bc4ed925e97b3a8a320dd7238
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
JSON object release is done by the appfw so no need to release
the object in the request.
Tiny typo about the filepath in testsuite.
Change-Id: I8347adafbb5fa8e9e3b89c2e6db74c37f4910adf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Submodule afb-helpers a37225f..f0ce5b6:
> wrap-json: Fix duplicated lines in header file
> Add '@' as binder middle name separator.
> Enhance 'wrap_json_clone_depth' description
Submodule conf.d/app-templates f0b24b0..52ae181:
> Fix: typo
Submodule ctl-utilities a58d83b..bdf1a6b:
> ctl-lua: Fixed memory corruption
> Migration to v3
> Adds v3 function to get binding settings
> New function returning the binding root directory
> Change the default GLOB pattern
> Fix wrong computed length
> Add path to the installed widget path.
> Controller: Converted README to a gitbook version.
> New defaults useful functions on lua table
> More precise log message when loading a Lua file
> Fix: wrong legacy function signature
> Split loading JSON controller file.
> Release arguments once C function returned.
Change-Id: I9d7b7dee7e0e3473734ff869080a4e672ba3f951
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Wrote a couple of basic API tests
Setup mock apis for the test binding
Added script to launch tests on native Linux machines
Change-Id: I606752e7b46cb2afdc10f3319a24ef15675faa3b
Signed-off-by: Clément Malléjac <clementmallejac@gmail.com>
|
|
Change-Id: I1f2b7484216271f97205cb9933bfd5ef2990bb2e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This let the application framework handle the JSON object
lifetime.
Change-Id: Iff48f478d71e71e25ed79d2c7c13b45a7b6a7bf9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Returns error in request response instead of binder log when
you try to get a signal value.
Change-Id: I12809591801db5718aa4713034f2bb1801b6bf2d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Since last controller changes this hardcoded default action
definition.
Change-Id: I0021fef000b2085efe0deda550cff243afd6711d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Before value was translated to a C type variable two times,
at the reception then at the emission. Now it just receives
and sends the signal value without translation nor interpretation
except if you ask for an average, minimum or maximum value. Then in
those cases it interprets the json to return you a value or an
error if there is no numeric values to compute.
Remove unneeded log message at event reception.
Improved signal search engine, will search in source's signals map
by the signal ID not the event name which lead to a more direct map
match.
Bugs-AGL: SPEC-1612
Depends-On: I43e79ed73a507ac2ca7ed4cdc3f16ec009392194
Change-Id: Ie253c3fe1e8cde42dabe8832da74e9f9bf442c14
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This adds a signal's metadata attribute which lets you store
any kind and number of metadata attributes to your signal. These
metadata are just reissued at the event emission without alteration.
Special case of "unit" attribute which is kept as a signal attribute
and not as a metadata because it is an intrinsic signal attribute that
all signals should have.
Bug-AGL: SPEC-1419
Change-Id: I531b4012ac9b22f312a4ccebc1a07a8d93129403
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Update config.cmake file with app-templates improvments:
- Now versioning is handled by app-templates based on gerrit tags
- Binding version set up in config.cmake rather than in code.
- Update variables name for build type and install prefix.
Submodule afb-helpers 43ec971..a37225f:
> Fix: use of GetBindingDirPath without dynapi
> Retrieve directory list from environment variables
> Remove the file .gitmodules
> Remove unnecessary 'AFB_DEBUG' redefinition
> Use binding version to handle dynapi
> At search, use the prefix parameter as a prefix
> Remove deprecated use of cmake/Qt macro
> Rename method to avoid conflict with Qt's one
Submodule conf.d/app-templates aa68dbd..f94e45e:
> Align sample on actual default compile options
> Add support to binding version 3.
> Warning if not using wgtpkg-pack to make a widget
> Rework CMAKE_INSTALL_PREFIX and INSTALL_PREFIX var
> Be able to overwrite BUILD_TYPE using CLI
> Use CACHE variable for other common CMAKE variable
> Fix:: wrong wgt using RELEASE BUILD TYPE
> Fix: SYSROOT location detection... Wrong test.
> Change the default debug compilation options.
> Clearer coverage compilation options configuration
Submodule ctl-utilities 1ff524b..ff14c58:
> Fix : typo introduced in a previous commit.
> Use prefix variable to find controller's plugins
> Use binding version to set controller definitions
> ctl-lua: typo fix
> asynchronism for test: LockWait added
> Fix: plugin api assignement order
> Execute ConfigExec only if section is existing
> Always set the api member even if NULL.
> Ability to add a plugin after the initial load
> Be able to dispatch required api at the wanted time
Depends-On : I135a723d21d70b8c54f4cab1c534210757318ed0
Change-Id: I90938f53dd1f606b3aa39a549e618c0fe413870c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Submodule conf.d/app-templates 6e1a3c3..aa68dbd:
> Don't overwrite the autobuild script if it exists
> Disable the in-tree build method.
> Detect Yocto as OS distribution
> Fix: wrong compile options added
> Fallback using zip format if no wgtpkg-pack found
> 02-variables.cmake: Avoid checking CXX version if not required
> config.cmake.sample: Remove dependency to libsystemd
> config.cmake.sample: Remove dependency to libmicrohttpd
> Added -D_FORTIFY_SOURCE=2 to CFLAGS
> start-on-target: uses RSYNC_PREFIX path for config
> Fixed spelling.
> Improve OS detection
> Fix: OS detection
> Launch from workdir
> Change closing that could fix native debugging
Submodule ctl-utilities 0129510...1ff524b:
> Change LUA package path at LUA interpreter load
> Don't load two times a plugin even for LUA
> Fixed hidden bound variable (apiHandle)
> Fixed null value when push Lua arguments
> Adjust to compile with incoming bindings v3
> Remove declaration to not existing functions
> Add 2 lua utilities function
> Update README.md for new metadata keys.
> Fix a compilation issue due to modif of AFB_ReqSuccess
> README:md: update README accordingly to new json scheme.
> Fixed crash due to call to json_object_put
> Fix segfault when printing long message from lua
> Fixed spelling of AFB_ReqSuccess
> Remove an unnecessary variable
> Make parsing of action loading non blocking
> Use an external file for app fw functions link
> Use macro to test request validity
> Fixed build warnings with gcc >= 7.3
> Increase lua script max message size
> Prevent lost of config file path when searching
> Correct way that api actions are handled in controller
> Handle more metadata in the controller.
> Add possibility to set prefix to NULL in CtlConfigScan
> Fixed compilation warnings with gcc-7.2.0
> Add an external field to CtlConfigT
> Make action item from a LUA action mandatory
> Handle no prefix given
> Good usage of strncat and strncpy
> Update to the new JSON syntax
> Detect failure at OnLoad action calls
> Improve reliability and function calls
> Correctly release request JSON object
> Add AFB macros
> Don't use assert in controller.
> Change lua2c JSON syntax.
> Search for Event section
> Fix: changes key name.
> Fix: arguments pointer NULL check
> Fix wrong error message.
> Simplify action definition
> Fix: Dyn API Action loading procedure
> Use new version of function GetBindingDirPath
> Format
> Merge changes from topic 'sandbox/claneys/wip'
> Upgrade config schema
> Fix: callback execution condition
< Format
< Fix: callback execution condition
< New action loading function.
< Upgrade config schema
Adapt json config file to new syntax
Fix: prefix now add the "-" so it'isn't needed to add it in the
prefix at search (signal-composer.cpp)
Fix: calling a api verb without json_object fails because
of config arguments not retrieved. (sources.cpp)
Change-Id: I48c1bca9fbac485e6a34b4645e683d9bdb1cbf2b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
We use only one function of two from the plugin which could
be called from the LUA script to be able to set a signal
value from a LUA callback.
Change-Id: Ic7a0fcd3d8c4c2370828c1d09fff9ed88a0dc15b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This ensure that the json_object is correctly released
after. Then after that the call will have enough reference count.
Also fix a GCC warning using "if" instead of trigraph
Change-Id: I41776d9009465f48f6c0b236614c0a32244f5cfb
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
By default Efence isn't enable. You now have to
specifically set it up if you want to use the Efence
library
Change-Id: I7803636bed08fc248f820df2db64310d96d57d8e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Some function that are now included in the controller submodule
do not need to be in the composer as well. Also initialize
sources and signals in the same way .
JSON configuration needs to be updated to fit this changes
Change-Id: I2043791e7ee80f8350f33ed15bdf9980c0773b82
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: Ic1a0621d9c0bbbffb7dcc0f9daf148a372818cdb
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Last timestamp and value is those ones directly store as object's
attributes not the last from the history. Simple...
Change-Id: Id2c808a1b236dfa36821cf9fc5a5bcd6a4114f10
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Improve GPS plugin to be able to calculate the heading also remove
the builtin plugin that was an error. We need to pass GPS plugin in
C++ to be able to use the context.
Handle "double" and "int" signal's value.
Change-Id: I6d902e4ac76a0e933326c0b4c43922645c9c5a4c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
The notify was in fact called 2 times.
It is attended that a callback should "set"
the signal value to record it.
Setting the signal's value already call notify which
an action should do at the end. Notifying has a
meaning only if a signal value has been modified.
Change-Id: I4a8128317a88bf7459b2c4aa0f575c4b2524e816
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This is the default precision returned by the kernel
when calling get_clocktime(), so this avoid useless
division to get a less precise time. Also signaling
event should have this kind of precision to be able
to correctly debugging system on signals heavy load.
Change-Id: I010b98305cff7387787fd8f8a1e8a0f9107a170a
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Change-Id: I4c2a31f5c395c0d85ec810b25fb88c70cf691375
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Adding != operator to Signal class
This operator is needed to exclude signal
inclusion in notify function and make
possible to add a signal at last position
Change-Id: I95f3434019383e52928c37f396aae938f2cfae05
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
boolean and numerical case initialized the same
way.
Change-Id: I274b5d898761c12f555ea59a178e363efe18f81d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
Update submodules
Change-Id: I7f3a8e0059ce05e6bf46315d1de80c25cb87b2cf
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
- Fix memleak: RRelease the Signal JSON representation once used
- Change equality condition between signals
- Use a REALTIME clock to retrieve the timestamp if not provided by
the signal. This is the most simple to date a signal and
use that time for further usage.
- Add a method to retrieve the last_timestamp value from
a signal
This with the commit from ctl-utilities submodule
"8ff0fe3c454ea32ba383a3cfa9c4e91237d6c494" fixes the
issue.
Change-Id: Ifed66796f92d789c80f10b161318f6bef788dda7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
This has changed and is now explicitly launched because
last step of Controller configuration doesn't execute it.
Change-Id: I104011b912172da62114b62eeab90c76e41459dd
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
By default subscription argument request from signal
are passed if present, else the one from the signal's
source if present.
If nothing is specified for sources then argument
is set as a NULL pointer.
Change-Id: I18db0a9922039f41d475cd08758a2afd4acaa9d4
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
1 for normal multi low level sources
1 for TXC-demo
Future goal will be to merge them
Also reorganize data resources files
Bump app-template:
Submodule conf.d/app-templates dd0cec7..30e78a5:
> Adding cmake file at the root directory
> Adds commit hash to the version.
> Change default sample settings.
Change-Id: I31838723da58fc33b25bc7cd5f42396a1805e34d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
|
|
* changes:
Added .gitreview file
Add objects directly from JSON argument
|