From 71e66278d7bc26b09704c35150402bb62136101f Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Mon, 3 Oct 2011 16:46:48 -0400 Subject: [PATCH] use sfa.rspecs.rspec.RSpec instead of sfa.rspecs.pg_rspec.PGRSpec and sfa.rspecs.sfa_rspec.SFARSpec() --- sfa/rspecs/pg_rspec_converter.py | 21 ++++++++++++--------- sfa/rspecs/rspec_converter.py | 24 +++++++++++++++--------- sfa/rspecs/sfa_rspec_converter.py | 21 ++++++++++++--------- 3 files changed, 39 insertions(+), 27 deletions(-) diff --git a/sfa/rspecs/pg_rspec_converter.py b/sfa/rspecs/pg_rspec_converter.py index 4686e4c4..875af8d8 100755 --- a/sfa/rspecs/pg_rspec_converter.py +++ b/sfa/rspecs/pg_rspec_converter.py @@ -2,8 +2,8 @@ from lxml import etree from StringIO import StringIO from sfa.util.xrn import * -from sfa.rspecs.pg_rspec import PGRSpec -from sfa.rspecs.sfa_rspec import SfaRSpec +from sfa.rspecs.rspec import RSpec +from sfa.rspecs.version_manager import VersionManager xslt=''' @@ -35,20 +35,23 @@ class PGRSpecConverter: @staticmethod def to_sfa_rspec(rspec): - if isinstance(rspec, PGRSpec): + if not isinstance(rspec, RSpec): + pg_rspec = RSpec(rspec) + else: pg_rspec = rspec - else: - pg_rspec = PGRSpec(rspec=rspec) - sfa_rspec = SfaRSpec() + + version_manager = VersionManager() + sfa_version = version_manager._get_version('sfa', '1') + sfa_rspec = RSpec(version=sfa_version) # get network - network_urn = pg_rspec.get_network() + network_urn = pg_rspec.version.get_network() network, _ = urn_to_hrn(network_urn) network_element = sfa_rspec.add_element('network', {'name': network, 'id': network}) # get nodes - pg_nodes_elements = pg_rspec.get_node_elements() - nodes_with_slivers = pg_rspec.get_nodes_with_slivers() + pg_nodes_elements = pg_rspec.version.get_node_elements() + nodes_with_slivers = pg_rspec.version.get_nodes_with_slivers() i = 1 for pg_node_element in pg_nodes_elements: attribs = dict(pg_node_element.attrib.items()) diff --git a/sfa/rspecs/rspec_converter.py b/sfa/rspecs/rspec_converter.py index 6f96d4f2..4ea74c28 100755 --- a/sfa/rspecs/rspec_converter.py +++ b/sfa/rspecs/rspec_converter.py @@ -2,19 +2,20 @@ from sfa.rspecs.pg_rspec_converter import PGRSpecConverter from sfa.rspecs.sfa_rspec_converter import SfaRSpecConverter -from sfa.rspecs.sfa_rspec import sfa_rspec_version -from sfa.rspecs.pg_rspec import pg_rspec_ad_version, pg_rspec_request_version -from sfa.rspecs.rspec_parser import parse_rspec - +from sfa.rspecs.rspec import RSpec +from sfa.rspecs.version_manager import VersionManager class RSpecConverter: @staticmethod def to_sfa_rspec(in_rspec): - rspec = parse_rspec(in_rspec) - if rspec.version['type'] == sfa_rspec_version['type']: + rspec = RSpec(in_rspec) + version_manager = VersionManager() + sfa_version = version_manager._get_version('sfa', '1') + pg_version = version_manager._get_version('protogeni', '2') + if rspec.version.type.lower() == sfa_version.type.lower(): return in_rspec - elif rspec.version['type'] == pg_rspec_ad_version['type']: + elif rspec.version.type.lower() == pg_version.type.lower(): return PGRSpecConverter.to_sfa_rspec(in_rspec) else: return in_rspec @@ -22,9 +23,14 @@ class RSpecConverter: @staticmethod def to_pg_rspec(in_rspec): rspec = parse_rspec(in_rspec) - if rspec.version['type'] == pg_rspec_ad_version['type']: + rspec = RSpec(in_rspec) + version_manager = VersionManager() + sfa_version = version_manager._get_version('sfa', '1') + pg_version = version_manager._get_version('protogeni', '2') + + if rspec.version.type.lower() == pg_version.type.lower(): return in_rspec - elif rspec.version['type'] == sfa_rspec_version['type']: + elif rspec.version.type.lower() == sfa_version.type.lower(): return SfaRSpecConverter.to_pg_rspec(in_rspec) else: return in_rspec diff --git a/sfa/rspecs/sfa_rspec_converter.py b/sfa/rspecs/sfa_rspec_converter.py index 972835fb..4d078463 100755 --- a/sfa/rspecs/sfa_rspec_converter.py +++ b/sfa/rspecs/sfa_rspec_converter.py @@ -3,25 +3,28 @@ from lxml import etree from StringIO import StringIO from sfa.util.xrn import * -from sfa.rspecs.sfa_rspec import SfaRSpec -from sfa.rspecs.pg_rspec import PGRSpec +from sfa.rspecs.rspec import RSpec +from sfa.rspecs.version_manager import VersionManager class SfaRSpecConverter: @staticmethod def to_pg_rspec(rspec): - if isinstance(rspec, SfaRSpec): - sfa_rspec = rspec + if not isinstance(rspec, RSpec): + sfa_rspec = RSpec(rspec) else: - sfa_rspec = SfaRSpec(rspec=rspec) - pg_rspec = PGRSpec() - + sfa_rspec = rspec + + version_manager = VersionManager() + pg_version = version_manager._get_version('protogeni', '2', 'request') + pg_rspec = RSpec(version=pg_version) + # get networks - networks = sfa_rspec.get_networks() + networks = sfa_rspec.version.get_networks() for network in networks: # get nodes - sfa_node_elements = sfa_rspec.get_node_elements(network=network) + sfa_node_elements = sfa_rspec.version.get_node_elements(network=network) for sfa_node_element in sfa_node_elements: # create node element node_attrs = {} -- 2.47.0