"""
from sfa.util.xrn import Xrn
from sfa.util.xml import XpathFilter
-from sfa.rspecs.elements.node import NodeElement
+from sfa.rspecs.elements.node import Node
from sfa.rspecs.elements.sliver import Sliver
from sfa.rspecs.elements.location import Location
from sfa.rspecs.elements.hardware_type import HardwareType
class IotlabMobility(Element):
""" Class to give information of a node's mobility, and what kind of
mobility it is (train, roomba robot ...) """
- fields = ['mobile', 'mobility-type']
+ fields = ['mobile', 'mobility_type']
if len(network_elems) > 0:
network_elem = network_elems[0]
- iotlab_network_dict = {}
- iotlab_network_dict['login'] = ldap_username
+ iotlab_network_dict = {}
+ iotlab_network_dict['login'] = ldap_username
- iotlab_network_dict['ssh'] = \
- ['ssh ' + ldap_username + '@'+site+'.iotlab.info'
- for site in sites_set]
- network_elem.set('ssh',
- unicode(iotlab_network_dict['ssh']))
- network_elem.set('login', unicode(iotlab_network_dict['login']))
+ iotlab_network_dict['ssh'] = \
+ ['ssh ' + ldap_username + '@'+site+'.iotlab.info'
+ for site in sites_set]
+ network_elem.set('ssh',
+ unicode(iotlab_network_dict['ssh']))
+ network_elem.set('login', unicode(iotlab_network_dict['login']))
@staticmethod
def add_nodes(xml, nodes):
else:
network_elem = xml
- logger.debug("iotlabv1Node \t add_nodes nodes %s \r\n " % (nodes[0]))
node_elems = []
#Then add nodes items to the network item in the xml
for node in nodes:
now='false')
#set position
- logger.debug("Iotlabv1Node position node_elem %s" % (node_elem))
if attribute is 'position':
node_elem.add_instance('position', node['position'],
IotlabPosition.fields)
- logger.debug("Iotlabv1Node position node[position] %s "
- % (node['position']))
## add services
#PGv2Services.add_services(node_elem, node.get('services', []))
# add slivers
"""
nodes = []
for node_elem in node_elems:
- node = NodeElement(node_elem.attrib, node_elem)
+ node = Node(node_elem.attrib, node_elem)
nodes.append(node)
if 'component_id' in node_elem.attrib:
node['authority_id'] = \
node['interfaces'] = [iface_elem.get_instance(Interface)
for iface_elem in iface_elems]
+ # get position
+ position_elems = node_elem.xpath('./default:position | ./position')
+ if position_elems:
+ position_elem = position_elems[0]
+ node['position'] = position_elem.get_instance(IotlabPosition)
+
# get services
#node['services'] = PGv2Services.get_services(node_elem)