diff options
| author | Alon Levy <alon@pobox.com> | 2015-01-06 21:41:27 +0200 |
|---|---|---|
| committer | Alon Levy <alon@pobox.com> | 2015-01-06 21:41:27 +0200 |
| commit | 04c94ef35ebeecbc1ce4ed4748bf4782b9210790 (patch) | |
| tree | ddc7d2149f942123ac090dd6874e35b2ba0dd874 | |
| parent | 546ee33efaaa0df3e121a7ba5c16bc3aa1a0aeeb (diff) | |
server: hack my way to a working __type/__label_set, please fix at will
| -rw-r--r-- | src/server/neo4j_util.py | 11 | ||||
| -rw-r--r-- | src/server/rz_api_common.py | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/server/neo4j_util.py b/src/server/neo4j_util.py index 9af9eaa0..1f4ddd4e 100644 --- a/src/server/neo4j_util.py +++ b/src/server/neo4j_util.py @@ -284,11 +284,14 @@ def meta_attr_list_to_meta_attr_map(e_set, meta_attr='__label_set'): for v in e_set: meta_attr_list = v.get(meta_attr) assert None != meta_attr_list, 'missing type meta-attribute' - assert list == type(meta_attr_list), 'type meta-attribute not in list form' - assert len(meta_attr_list) < 2, 'only single-type mapping currently suppoerted' - assert 1 == len(meta_attr_list), 'missing meta attribute __label_set or __type' - v_type = v[meta_attr][0] + # Amir - refactor at will + # handle either a list or a string - we use a list for __label_set + # and a string for __type + if list == type(meta_attr_list): + v_type = v[meta_attr][0] + else: + v_type = v[meta_attr] if None == ret.get(v_type): # init type list if necessary ret[v_type] = [] diff --git a/src/server/rz_api_common.py b/src/server/rz_api_common.py index 68d9008d..be37837c 100644 --- a/src/server/rz_api_common.py +++ b/src/server/rz_api_common.py @@ -25,9 +25,9 @@ def sanitize_input__link(l): assert None != l.get('id'), 'invalid input: link: missing id' assert None != l.get('__src_id'), 'invalid input: link: missing src id' assert None != l.get('__dst_id'), 'invalid input: link: missing dst id' + assert None != l.get('__type'), 'invalid input: link: missing type' # unexpected prop assertions - assert None == l.get('__type'), 'client is sending us __type link property, it should not' assert None == l.get('name'), 'client is sending us name link property, it should not' def sanitize_input__topo_diff(topo_diff): |
