summaryrefslogtreecommitdiff
path: root/src-py/rhizi_webapp.py
diff options
context:
space:
mode:
authorLV-426 <lv-426@taproot.org.il>2014-09-23 16:28:16 +0300
committerLV-426 <lv-426@taproot.org.il>2014-09-23 16:28:16 +0300
commit68b2334cd8484ac72814060ced5703a2f94b57d7 (patch)
tree7c224efbebe812e8c2595643d1f1db583694a058 /src-py/rhizi_webapp.py
parent0ee6fc14b843f8701d1a82001dd438da87c9426e (diff)
initial implementation
Diffstat (limited to 'src-py/rhizi_webapp.py')
-rw-r--r--src-py/rhizi_webapp.py70
1 files changed, 70 insertions, 0 deletions
diff --git a/src-py/rhizi_webapp.py b/src-py/rhizi_webapp.py
new file mode 100644
index 00000000..b63407d6
--- /dev/null
+++ b/src-py/rhizi_webapp.py
@@ -0,0 +1,70 @@
+"""
+Rhizi webapp
+"""
+import os
+import json
+import logging
+
+from flask import Flask, request, url_for
+import db_controller as dbc
+
+cwd = os.getcwd()
+app = Flask(__name__)
+app.debug = True
+
+class Config:
+ """
+ rhizi-server configuration
+ """
+
+ @staticmethod
+ def init_from_file(file_path):
+ ret = Config()
+
+ with open(file_path, 'r') as f:
+ cfg = json.loads(f.read())
+ ret.db_base_url = cfg['neo4j_url']
+
+ return ret
+
+ @property
+ def db_base_url(self):
+ return self.neo4j_url
+
+ @property
+ def tx_api_path(self):
+ return '/db/data/transaction'
+
+@app.route("/add-node-set")
+def foo():
+ pass
+
+def init_logging():
+ global log
+
+ log = logging.getLogger('rhizi')
+ log.setLevel(logging.DEBUG)
+ log_handler_c = logging.StreamHandler()
+ log_handler_f = logging.FileHandler('/tmp/rhizi-backend.log')
+
+ log.addHandler(log_handler_c)
+ log.addHandler(log_handler_f)
+
+def test_DB_controller_api():
+ db_ctl = dbc.DB_Controller(cfg)
+
+ n_map = { 'Skill': [{'name': 'kung fu' },
+ {'name': 'judo' }
+ ],
+ 'Person': [{'name': 'Bob' }, {'name': 'Alice' }]
+ }
+
+ db_ctl.exec_op(dbc.DBO_add_node_set(n_map))
+ id_set = db_ctl.exec_op(dbc.DBO_load_node_id_set(filter_type='Skill'))
+
+if __name__ == "__main__":
+ cfg = Config.init_from_file('res/etc/rhizi-backend.conf')
+ init_logging()
+
+ test_DB_controller_api()
+ # app.run(host='127.0.0.1', port=rhizi_backend_cfg['port'], ssl_context=ctx)