summaryrefslogtreecommitdiff
path: root/src/server/db_op.py
diff options
context:
space:
mode:
authorLV-426 <lv-426@taproot.org.il>2015-01-05 18:40:48 +0200
committerLV-426 <lv-426@taproot.org.il>2015-01-05 18:40:48 +0200
commit870282c1df3bcf0ead8a0f6048aabd941220b30d (patch)
tree9008fe665871628e7060fd1dec2709c717f3811c /src/server/db_op.py
parent89319e8eb9237c6db1840d724c17c8cab76fcd93 (diff)
DB_op#add_statement(): support query addition via query array
Diffstat (limited to 'src/server/db_op.py')
-rw-r--r--src/server/db_op.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/server/db_op.py b/src/server/db_op.py
index b725c358..fd4b3ba9 100644
--- a/src/server/db_op.py
+++ b/src/server/db_op.py
@@ -24,12 +24,18 @@ class DB_op(object):
id_str = m.group('id')
self.tx_id = int(id_str)
- def add_statement(self, query, query_params={}):
+ def add_statement(self, q_str_or_array, query_params={}):
"""
add a DB query language statement
+
+ @param q_str_or_array: cypher query to add - if passed as an array ' '.join(q_str_or_array)
+ is used to convert it to string type
@return: statement index (zero based)
"""
- s = db_util.statement_to_REST_form(query, query_params)
+ if type(q_str_or_array) is list:
+ q_str_or_array = ' '.join(q_str_or_array)
+
+ s = db_util.statement_to_REST_form(q_str_or_array, query_params)
self.statement_set.append(s)
return len(self.statement_set)
@@ -344,6 +350,7 @@ class DBO_attr_diff_commit(DB_op):
blob = json.dumps(attr_diff)
chain_commit_op = DBO_block_chain__commit(blob)
+
self.add_sub_op(chain_commit_op)
def add_link_rename_statements(self, id_attr, new_label):
@@ -548,9 +555,8 @@ class DBO_rm_node_set(DB_op):
'return n_id'
]
- q = ' '.join(q_arr)
q_params = {'id_set': id_set}
- self.add_statement(q, q_params)
+ self.add_statement(q_arr, q_params)
class DBO_rm_link_set(DB_op):
def __init__(self, id_set):
@@ -571,9 +577,8 @@ class DBO_rm_link_set(DB_op):
'return r_id'
]
- q = ' '.join(q_arr)
q_params = {'id_set': id_set}
- self.add_statement(q, q_params)
+ self.add_statement(q_arr, q_params)
class DBO_rz_clone(DB_op):
def __init__(self, filter_label=None, limit=128):
@@ -598,8 +603,7 @@ class DBO_rz_clone(DB_op):
'optional match (n)-[r]->(m)',
'return n,labels(n),collect([m.id, r, type(r)])']
- q = ' '.join(q_arr)
- self.add_statement(q)
+ self.add_statement(q_arr)
def process_result_set(self):
ret_n_set = []