aboutsummaryrefslogtreecommitdiff
path: root/rumba/model.py
diff options
context:
space:
mode:
authorMarco Capitani <m.capitani@nextworks.it>2017-04-11 13:08:30 +0200
committerMarco Capitani <m.capitani@nextworks.it>2017-04-11 13:08:30 +0200
commita7fbb7237f63c4c0d09cfd35c93fbe2e126bc471 (patch)
treea8838f0bfac8bd6854568b880443e031bb07600c /rumba/model.py
parent8797eff49aede4ad06ba668e4cee59accc12d1af (diff)
downloadrumba-a7fbb7237f63c4c0d09cfd35c93fbe2e126bc471.tar.gz
rumba-a7fbb7237f63c4c0d09cfd35c93fbe2e126bc471.zip
IRATI config file generation
Diffstat (limited to 'rumba/model.py')
-rw-r--r--rumba/model.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/rumba/model.py b/rumba/model.py
index faf353c..4a9a1be 100644
--- a/rumba/model.py
+++ b/rumba/model.py
@@ -298,7 +298,9 @@ class ShimUDPIPCP(IPCP):
# @nodes: Nodes in the experiment
#
class Experiment:
- def __init__(self, testbed, nodes=None):
+ def __init__(self, testbed, nodes=None, config_file=None):
+ if config_file:
+ nodes = self.read_config_file(config_file)
if nodes is None:
nodes = list()
self.nodes = nodes
@@ -311,13 +313,12 @@ class Experiment:
self.generate()
@staticmethod
- def from_config_file(testbed, filename='demo.conf'):
+ def read_config_file(filename='demo.conf'):
"""
:type testbed: Testbed
- :rtype: Experiment
:param testbed: the testbed for the experiment
:param filename: name of the .conf file
- :return: an Experiment object
+ :return: the nodes list for the configuration file
"""
shims = {}
@@ -407,7 +408,7 @@ class Experiment:
for x, l in node_data['dif_registrations'].items()}
parsed_nodes.append(Node(name, difs, dif_registrations))
- return Experiment(testbed=testbed, nodes=parsed_nodes)
+ return parsed_nodes
def __repr__(self):
s = ""