X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=src%2Fnepi%2Fresources%2Fomf%2Fchannel.py;h=bac1119e6f8275a91c624e76882ebd43124393ed;hb=6285ca51026efb69642eea9dfc7c480e722d84a9;hp=3abbc14d7e91c606807c992713c27a62563997f0;hpb=2e80f0fafa0c2ef6a5f536efd4c868c91468f962;p=nepi.git diff --git a/src/nepi/resources/omf/channel.py b/src/nepi/resources/omf/channel.py index 3abbc14d..bac1119e 100644 --- a/src/nepi/resources/omf/channel.py +++ b/src/nepi/resources/omf/channel.py @@ -3,9 +3,8 @@ # Copyright (C) 2013 INRIA # # This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation; # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,8 +17,9 @@ # Author: Alina Quereilhac # Julien Tribino +from nepi.util.timefuncs import tnow from nepi.execution.resource import ResourceManager, clsinit_copy, \ - ResourceState, reschedule_delay + ResourceState from nepi.execution.attribute import Attribute, Flags from nepi.resources.omf.omf_resource import ResourceGateway, OMFResource @@ -39,8 +39,8 @@ class OMFChannel(OMFResource): :type creds: dict """ - _rtype = "OMFChannel" - _authorized_connections = ["OMFWifiInterface", "OMFNode"] + _rtype = "omf::Channel" + _authorized_connections = ["omf::WifiInterface", "omf::Node"] ChannelToFreq = dict({ "1" : "2412", @@ -81,6 +81,11 @@ class OMFChannel(OMFResource): self._omf_api = None + # For performance tests + self.perf = True + self.begin_deploy_time = None + + @property def exp_id(self): return self.ec.exp_id @@ -120,7 +125,7 @@ class OMFChannel(OMFResource): rm_iface = self.ec.get_resource(elt) for conn in rm_iface.connections: rm_node = self.ec.get_resource(conn) - if rm_node.get_rtype() == "OMFNode" and rm_node.get('hostname'): + if rm_node.get_rtype() == "omf::Node" and rm_node.get('hostname'): if rm_iface.state < ResourceState.PROVISIONED or \ rm_node.state < ResourceState.READY: return "reschedule" @@ -139,21 +144,26 @@ class OMFChannel(OMFResource): using OMF 5.4 or 6 protocol to configure the channel. """ + + ## For performance test + if self.perf: + self.begin_deploy_time = tnow() + self.perf = False + if not self.get('channel'): msg = "Channel's value is not initialized" self.error(msg) - raise RuntimeError, msg + raise RuntimeError(msg) if self.get('version') == "6": self.frequency = self.get_frequency(self.get('channel')) super(OMFChannel, self).do_deploy() return - if not self.get('xmppServer'): msg = "XmppServer is not initialzed. XMPP Connections impossible" self.error(msg) - raise RuntimeError, msg + raise RuntimeError(msg) if not (self.get('xmppUser') or self.get('xmppPort') or self.get('xmppPassword')): @@ -167,8 +177,6 @@ class OMFChannel(OMFResource): self._nodes_guid = self._get_target(self._connections) - - if self._nodes_guid == "reschedule" : self.ec.schedule("1s", self.deploy) else: