diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-10-12 15:18:48 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2014-10-12 15:18:48 +0200 |
| commit | de70bef3e3be880b86e08aba810940d9481ce64b (patch) | |
| tree | 7d99fbab65a40505536b61fbfc3d04b386a2e328 /src-py/db_controller.py | |
| parent | 8e20a72f5cd0464f673a374e5a3741a58932e770 (diff) | |
n=node:IndexName(Key={value})
DBO_add_link_set operation & test:
- use DB_op.__iter__ to compile on_completion() return value
- return id(link) values until we come up with a better link id scheme
Diffstat (limited to 'src-py/db_controller.py')
| -rw-r--r-- | src-py/db_controller.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src-py/db_controller.py b/src-py/db_controller.py index 32d5a436..bff3a45b 100644 --- a/src-py/db_controller.py +++ b/src-py/db_controller.py @@ -114,6 +114,27 @@ class DBO_add_node_set(DB_op): log.debug('node-set added: ids: ' + str(id_set)) return id_set +class DBO_add_link_set(DB_op): + def __init__(self, link_map): + """ + @param link_map: is a link-type to link-set map - see model.link + """ + super(DBO_add_link_set, self).__init__() + for q, q_params in db_util.gen_query_create_from_link_map(link_map): + self.add_statement(q, q_params) + + def on_completion(self, data): + super(DBO_add_link_set, self).on_completion(data) + + id_set = [] + for s_id, s, r_set in self: + for row in r_set: + # [!] fragile - parse results + lid = row + id_set.append(lid) + + log.debug('link-set added: ids: ' + str(id_set)) + return id_set class DBO_load_node_set_by_DB_id(DB_op): def __init__(self, id_set): |
