From 2f2aa0dfa0182e7cee266b6fdc933a197e766295 Mon Sep 17 00:00:00 2001 From: LV-426 Date: Fri, 2 Jan 2015 17:36:12 +0200 Subject: _validate_obj__attr_diff(): validate API incoming objects --- src/server/rhizi_api.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/server') diff --git a/src/server/rhizi_api.py b/src/server/rhizi_api.py index cac1ae44..b71148ee 100644 --- a/src/server/rhizi_api.py +++ b/src/server/rhizi_api.py @@ -62,6 +62,13 @@ def sanitize_input__topo_diff(topo_diff): def sanitize_input__attr_diff(attr_diff): pass # TODO: impl +def _validate_obj__attr_diff(ad): + # check for name attr changes, which are currently forbidden + for n_id, node_attr_diff_set in ad['__type_node'].items(): + for attr_name in node_attr_diff_set['__attr_write'].keys(): + if 'id' == attr_name: + raise Exception('validation error: Attr_Diff: forbidden attribute change: \'id\', n_id: ' + n_id) + def __response_wrap(data=None, error=None): """ wrap response data/errors as dict - this should always be used when returning -- cgit v1.3.1