diff options
Diffstat (limited to 'src-py')
| -rw-r--r-- | src-py/rhizi_api.py | 12 | ||||
| -rw-r--r-- | src-py/rhizi_server.py | 27 |
2 files changed, 27 insertions, 12 deletions
diff --git a/src-py/rhizi_api.py b/src-py/rhizi_api.py index 6bc77cb6..7391c90f 100644 --- a/src-py/rhizi_api.py +++ b/src-py/rhizi_api.py @@ -31,8 +31,6 @@ class FlaskExt(Flask): ret.headers['Access-Control-Allow-Headers'] = "Origin, Content-Type, Accept, Authorization" return ret -webapp = FlaskExt(__name__) -webapp.debug = True # injected: DB controller db_ctl = None @@ -69,7 +67,6 @@ def __common_exec(op, on_success=__common_resp_handle): log.error(traceback.print_exc()) return __common_resp_handle('error occurred') -@webapp.route("/load/node-set-by-id", methods=['POST']) def load_node_set_by_id_attr(): """ load node-set by ID attribute @@ -99,7 +96,6 @@ def __load_node_set_by_id_attr_common(id_set): log.exception(e) return __common_resp_handle(error='unable to load node with ids: {0}'.format(id_set)) -@webapp.route("/match/node-set", methods=['POST']) def match_node_set_by_attr_filter_map(attr_filter_map): """ @param attr_filter_map @@ -109,7 +105,6 @@ def match_node_set_by_attr_filter_map(attr_filter_map): op = dbc.DBO_match_node_id_set(attr_filter_map) return __common_exec(op) -@webapp.route("/load/link-set/by_link_ptr_set", methods=['POST']) def load_link_set_by_link_ptr_set(): def deserialize_param_set(param_json): @@ -130,12 +125,10 @@ def load_link_set_by_link_ptr_set(): op = dbc.DBO_load_link_set.init_from_link_ptr_set(l_ptr_set) return __common_exec(op) -@webapp.route("/graph/clone", methods=['POST']) def rz_clone(): op = dbc.DBO_rz_clone() return __common_exec(op) -@webapp.route("/graph/diff-commit-set", methods=['POST']) def diff_commit_set(): """ commit a diff set @@ -150,7 +143,6 @@ def diff_commit_set(): op = dbc.DBO_topo_diff_commit(topo_diff) return __common_exec(op) -@webapp.route("/graph/diff-commit-topo", methods=['POST']) def diff_commit_topo(): """ commit a graph topology diff @@ -164,7 +156,6 @@ def diff_commit_topo(): op = dbc.DBO_topo_diff_commit(topo_diff) return __common_exec(op) -@webapp.route("/graph/diff-commit-attr", methods=['POST']) def diff_commit_attr(): """ commit a graph attribute diff @@ -175,11 +166,9 @@ def diff_commit_attr(): op = dbc.DBO_attr_diff_commit(attr_diff) return __common_exec(op) -@webapp.route("/graph/diff-commit-vis", methods=['POST']) def diff_commit_vis(): pass -@webapp.route("/add/node-set", methods=['POST']) def add_node_set(): """ @deprecated: use topo_attr_commit @@ -192,7 +181,6 @@ def add_node_set(): op = dbc.DBO_add_node_set(node_map) return __common_exec(op) -@webapp.route("/monitor/server-info", methods=['GET']) def monitor__server_info(): """ server monitor stub diff --git a/src-py/rhizi_server.py b/src-py/rhizi_server.py index f085e863..cef57f36 100644 --- a/src-py/rhizi_server.py +++ b/src-py/rhizi_server.py @@ -54,6 +54,33 @@ def init_logging(): class RhiziServer(object): pass +def init_rest_api(flask_webapp): + """ + map REST API calls + """ + rest_entry_set = [ + rest_entry('/add/node-set' , rhizi_api.add_node_set), + rest_entry('/graph/clone', rhizi_api.rz_clone), + rest_entry('/graph/diff-commit-set', rhizi_api.diff_commit_set), + rest_entry('/graph/diff-commit-topo', rhizi_api.diff_commit_topo), + rest_entry('/graph/diff-commit-attr', rhizi_api.diff_commit_attr), + rest_entry('/graph/diff-commit-vis', rhizi_api.diff_commit_vis), + rest_entry('/index', rhizi_api.index), + rest_entry('/load/node-set-by-id', rhizi_api.load_node_set_by_id_attr), + rest_entry('/load/link-set/by_link_ptr_set', rhizi_api.load_link_set_by_link_ptr_set), + rest_entry('/login', rhizi_api.login, {'methods': ['GET', 'POST']}), + rest_entry('/logout', rhizi_api.logout), + rest_entry('/match/node-set', rhizi_api.match_node_set_by_attr_filter_map), + rest_entry('/monitor/server-info', rhizi_api.monitor__server_info), + ] + + for re in rest_entry_set: + rest_path, f, flask_args = re + route_decorator = flask_webapp.route(rest_path, **flask_args) + flask_webapp.f = route_decorator(f) + + if '/login' != rest_path: + if __name__ == "__main__": p = argparse.ArgumentParser(description='rhizi-server') |
