X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Frspecs%2Fversions%2Fsfav1.py;h=964da059d319c8530a9bbd4631080b7186a0e8df;hb=fa77e36e57e78fb3f589818782cbdf327414fee5;hp=ec279715aeba02b6ea2f1f507cebe3049ca2f8a4;hpb=f3620a4cdf3aa39d6a09a0cb5a34470d6c74d456;p=sfa.git diff --git a/sfa/rspecs/versions/sfav1.py b/sfa/rspecs/versions/sfav1.py index ec279715..964da059 100644 --- a/sfa/rspecs/versions/sfav1.py +++ b/sfa/rspecs/versions/sfav1.py @@ -3,14 +3,13 @@ from lxml import etree from sfa.util.sfalogging import logger from sfa.util.xrn import hrn_to_urn, urn_to_hrn -from sfa.util.plxrn import PlXrn -from sfa.rspecs.baseversion import BaseVersion +from sfa.rspecs.version import RSpecVersion from sfa.rspecs.elements.element import Element from sfa.rspecs.elements.versions.pgv2Link import PGv2Link from sfa.rspecs.elements.versions.sfav1Node import SFAv1Node from sfa.rspecs.elements.versions.sfav1Sliver import SFAv1Sliver -class SFAv1(BaseVersion): +class SFAv1(RSpecVersion): enabled = True type = 'SFA' content_type = '*' @@ -93,6 +92,7 @@ class SFAv1(BaseVersion): attributes = [] nodes_with_slivers = self.get_nodes_with_slivers() for default_attribute in self.get_default_sliver_attributes(network): + attribute = default_attribute.copy() attribute['node_id'] = None attributes.append(attribute) for node in nodes_with_slivers: @@ -100,7 +100,7 @@ class SFAv1(BaseVersion): sliver_attributes = self.get_sliver_attributes(nodename, network) for sliver_attribute in sliver_attributes: sliver_attribute['node_id'] = nodename - attributes.append(attribute) + attributes.append(sliver_attribute) return attributes @@ -194,6 +194,9 @@ class SFAv1(BaseVersion): Merge contents for specified rspec with current rspec """ + if not in_rspec: + return + from sfa.rspecs.rspec import RSpec if isinstance(in_rspec, RSpec): rspec = in_rspec