summaryrefslogtreecommitdiff
path: root/src-py
diff options
context:
space:
mode:
authorLV-426 <lv-426@taproot.org.il>2014-12-08 22:34:02 +0200
committerLV-426 <lv-426@taproot.org.il>2014-12-08 22:34:02 +0200
commitcfe10b93a655d433d195440cfd1bf4a239a5da08 (patch)
tree539bd4c407acf56a906d261ef974b29c4e8003c2 /src-py
parent725f5a620ea241f7bca46b5e5f32786634a8e97c (diff)
Topo_Diff misc
Diffstat (limited to 'src-py')
-rw-r--r--src-py/model/graph.py19
1 files changed, 11 insertions, 8 deletions
diff --git a/src-py/model/graph.py b/src-py/model/graph.py
index bc642a69..27f168ed 100644
--- a/src-py/model/graph.py
+++ b/src-py/model/graph.py
@@ -18,7 +18,7 @@ class Attr_Diff(dict):
'attr_remove': []}
self[n_id] = ret
return ret
-
+
def add_node_attr_write(self, n_id, attr_name, attr_val):
n_attr_diff = self.get(n_id)
if None == n_attr_diff:
@@ -35,16 +35,19 @@ class Topo_Diff(object):
"""
Represents a change to the graph topology
"""
-
def __init__(self, link_set_rm=[],
- node_set_rm=[],
- node_set_add=[],
- link_set_add=[]):
+ node_set_rm=[],
+ node_set_add=[],
+ link_set_add=[]):
+
self.link_set_rm = link_set_rm
self.node_set_rm = node_set_rm
self.node_set_add = node_set_add
self.link_set_add = link_set_add
+ def __str__(self):
+ return __name__ + ': ' + ', '.join('%s: %d items' % (k, len(v)) for k, v in self.__dict__.items())
+
def check_validity(self, topo_diff_dict):
"""
Topo_Diff may represent invalid operations, eg. adding a link while
@@ -59,10 +62,10 @@ class Topo_Diff(object):
"""
ret = Topo_Diff()
- # merge keys - this allows obj constructor argument ommision,
- # such as when constructing from POST JSON data
+ # merge keys - this allows constructor argument omission (link_set_rm,
+ # node_set_rm, etc.) such as when constructing from POST JSON data
for k, _ in ret.__dict__.items():
- v = topo_diff_dict.get(k)
+ v = topo_diff_dict.get(k)
if None != v:
ret.__dict__[k] = v
return ret