From fef008b549c9c6d6ee1e564312787c3d3f14f0c0 Mon Sep 17 00:00:00 2001
From: Romain Forlot <romain.forlot@iot.bzh>
Date: Wed, 16 May 2018 00:58:28 +0200
Subject: Convert the binding to use the controller

Ease Time series DB abstraction layer by using
Dyn API that implemente the API defined by the JSON
schema.

Change-Id: I67de4fbca10048201fdd2da683732a5f4f5b5368
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
---
 conf.d/project/CMakeLists.txt            | 20 ++++++++++++++++++
 conf.d/project/etc/CMakeLists.txt        | 31 +++++++++++++++++++++++++++
 conf.d/project/etc/harvester-config.json | 36 ++++++++++++++++++++++++++++++++
 3 files changed, 87 insertions(+)
 create mode 100644 conf.d/project/CMakeLists.txt
 create mode 100644 conf.d/project/etc/CMakeLists.txt
 create mode 100644 conf.d/project/etc/harvester-config.json

(limited to 'conf.d/project')

diff --git a/conf.d/project/CMakeLists.txt b/conf.d/project/CMakeLists.txt
new file mode 100644
index 0000000..3beb009
--- /dev/null
+++ b/conf.d/project/CMakeLists.txt
@@ -0,0 +1,20 @@
+###########################################################################
+# Copyright 2015, 2016, 2017 IoT.bzh
+#
+# author: Fulup Ar Foll <rfulup@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.
+###########################################################################
+
+# This component should be included as a submodule and wont compile as standalone
+project_subdirs_add()
diff --git a/conf.d/project/etc/CMakeLists.txt b/conf.d/project/etc/CMakeLists.txt
new file mode 100644
index 0000000..d378d71
--- /dev/null
+++ b/conf.d/project/etc/CMakeLists.txt
@@ -0,0 +1,31 @@
+###########################################################################
+# 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(harvester-config)
+
+	file(GLOB CONF_FILES "*.json")
+
+	add_input_files("${CONF_FILES}")
+
+	SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
+	LABELS "BINDING-CONFIG"
+	OUTPUT_NAME ${TARGET_NAME}
+	)
diff --git a/conf.d/project/etc/harvester-config.json b/conf.d/project/etc/harvester-config.json
new file mode 100644
index 0000000..d2f7858
--- /dev/null
+++ b/conf.d/project/etc/harvester-config.json
@@ -0,0 +1,36 @@
+{
+    "$schema": "http://iot.bzh/download/public/schema/json/ctl-schema.json",
+    "metadata": {
+        "uid": "Harvester",
+        "version": "1.0",
+        "api": "harvester",
+        "info": "Data collection binding"
+    },
+    "plugins": [
+        {
+            "uid": "influxdb",
+            "info": "Plugins that handle influxdb read and write",
+            "spath": "lib/plugins",
+            "libs": "influxdb.ctlso"
+        }
+    ],
+
+    "onload": [
+        {
+            "uid": "init_db",
+            "info": "Ensure that InfluxDB is up",
+            "action": "plugin://influxdb#influxdb_ping"
+        }
+    ],
+
+    "controls": [
+        {
+            "uid": "write",
+            "action": "plugin://influxdb#write_to_influxdb"
+        },
+        {
+            "uid": "read",
+            "action": "plugin://influxdb#read_from_influxdb"
+        }
+    ]
+}
-- 
cgit 1.2.3-korg