summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLV-426 <lv-426@taproot.org.il>2014-11-09 12:10:57 +0200
committerLV-426 <lv-426@taproot.org.il>2014-11-09 12:10:57 +0200
commite5bb0ee5976f2f1348387ed6ed57cc43e34caa7c (patch)
tree36ed15bd46d753dae8021a31fdfc38f6cdacc318
parent85feae0a74a97ad7bc04e13b511601e14be5f234 (diff)
Topo_Diff - support omitted-argument construction
-rw-r--r--src-py/model/graph.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src-py/model/graph.py b/src-py/model/graph.py
index 8942285d..bc642a69 100644
--- a/src-py/model/graph.py
+++ b/src-py/model/graph.py
@@ -54,6 +54,15 @@ class Topo_Diff(object):
@staticmethod
def from_dict(topo_diff_dict):
+ """
+ construct from dict - no node/link constructor set must be provided
+ """
ret = Topo_Diff()
- ret.__dict__ = topo_diff_dict
+
+ # merge keys - this allows obj constructor argument ommision,
+ # such as when constructing from POST JSON data
+ for k, _ in ret.__dict__.items():
+ v = topo_diff_dict.get(k)
+ if None != v:
+ ret.__dict__[k] = v
return ret