abcf8473de54305b817de394867e70e3cdade206
[nepi.git] / src / nepi / resources / ns3 / ns3simulation.py
1 #
2 #    NEPI, a framework to manage network experiments
3 #    Copyright (C) 2014 INRIA
4 #
5 #    This program is free software: you can redistribute it and/or modify
6 #    it under the terms of the GNU General Public License as published by
7 #    the Free Software Foundation, either version 3 of the License, or
8 #    (at your option) any later version.
9 #
10 #    This program is distributed in the hope that it will be useful,
11 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 #    GNU General Public License for more details.
14 #
15 #    You should have received a copy of the GNU General Public License
16 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 #
18 # Author: Alina Quereilhac <alina.quereilhac@inria.fr>
19
20 class NS3Simulation(object):
21     @property
22     def client(self):
23         return self._client
24
25     def create(self, clazzname, *args):
26         return self.client.create(clazzname, *args)
27
28     def factory(self, type_name, **kwargs):
29         return self.client.factory(type_name, **kwargs)
30
31     def invoke(self, uuid, operation, *args):
32         return self.client.invoke(uuid, operation, *args)
33
34     def set(self, uuid, name, value):
35         return self.client.set(uuid, name, value)
36
37     def get(self, uuid, name):
38         return self.client.get(uuid, name)
39
40     def enable_trace(self, *args):
41         return self.client.enable_trace(*args)
42
43     def flush(self):
44         return self.client.flush()
45
46     def start(self):
47         return self.client.start()
48
49     def stop(self, time = None):
50         return self.client.stop(time)
51
52     def shutdown(self):
53         return self.client.shutdown()
54