X-Git-Url: http://git.onelab.eu/?p=sface.git;a=blobdiff_plain;f=sface%2Fsfidata.py;h=0ba93cbdc5339a0cf1874332f42ba483bb9a9afa;hp=57a6260eaabede71b8eceb16288f7f935b4a2255;hb=83798f68c3d08b162485f1286159ca76c57198f7;hpb=03b467d0bf99663f894553af50265816bd28027e diff --git a/sface/sfidata.py b/sface/sfidata.py index 57a6260..0ba93cb 100644 --- a/sface/sfidata.py +++ b/sface/sfidata.py @@ -38,6 +38,18 @@ class SfaceRSpec(RSpec): def remove_slivers(self, slivers, network=None, no_dupes=False): return self.version.remove_slivers(slivers, network, no_dupes) + def add_default_sliver_attribute(self, name, value, network=None): + self.version.add_default_sliver_attribute(name, value, network) + + def add_sliver_attribute(self, hostname, name, value, network=None): + self.version.add_sliver_attribute(hostname, name, value, network) + + def remove_default_sliver_attribute(self, name, value, network=None): + self.version.remove_default_sliver_attribute(name, value, network) + + def remove_sliver_attribute(self, hostname, name, value, network=None): + self.version.remove_sliver_attribute(hostname, name, value, network) + #def add_slivers(self, slivers, network=None, sliver_urn=None, no_dupes=False): # return self.version.add_slivers(slivers, network, sliver_urn, no_dupes) @@ -61,6 +73,21 @@ class SfaceRSpec(RSpec): for tag in sliver['tags']: etree.SubElement(sliver_elem, tag['tagname']).text = value=tag['value'] + # these should be moved to SFAv1, etc. + def get_node_boot_state(self, node, network): + return self.get_node_element(node, network).attrib.get("boot_state","") + + def get_node_sliver_type(self, node, network): + node = self.get_node_element(node, network) + if not node: + return "" + + sliver_types = node.xpath("sliver_type") + if len(sliver_types)>0: + return sliver_types[0].attrib.get("name", "") + + return "" + class SfiData: def __init__(self): pass