X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Frspecs%2Frspec_converter.py;h=0c058577e4c975c334fb8df71de84042e3726fdc;hb=4a9e6751f9f396f463932133b9d62fc925a99ef6;hp=89f03a47e84edb0a81436b0a3e29b165a0bbe47a;hpb=7841ee3ce022c84fcf9a8ea17ce12d52e36b3aaa;p=sfa.git diff --git a/sfa/rspecs/rspec_converter.py b/sfa/rspecs/rspec_converter.py index 89f03a47..0c058577 100755 --- a/sfa/rspecs/rspec_converter.py +++ b/sfa/rspecs/rspec_converter.py @@ -1,41 +1,49 @@ -#!/usr/bin/python +#!/usr/bin/env python3 + + 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']: - return in_rspec - elif rspec.version['type'] == pg_rspec_ad_version['type']: - return PGRSpecConverter.to_sfa_rspec(in_rspec) + def to_sfa_rspec(in_rspec, content_type=None): + 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.lower() == pg_version.type.lower(): + return PGRSpecConverter.to_sfa_rspec(in_rspec, content_type) else: - return in_rspec + return in_rspec - @staticmethod - def to_pg_rspec(in_rspec): - rspec = parse_rspec(in_rspec) - if rspec.version['type'] == pg_rspec_ad_version['type']: + @staticmethod + def to_pg_rspec(in_rspec, content_type=None): + 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']: - return SfaRSpecConverter.to_pg_rspec(in_rspec) + elif rspec.version.type.lower() == sfa_version.type.lower(): + return SfaRSpecConverter.to_pg_rspec(in_rspec, content_type) else: - return in_rspec + return in_rspec if __name__ == '__main__': pg_rspec = 'test/protogeni.rspec' - sfa_rspec = 'test/nodes.rspec' + sfa_rspec = 'test/nodes.rspec' + + print("converting pg rspec to sfa rspec") + print(RSpecConverter.to_sfa_rspec(pg_rspec)) - print "converting pg rspec to sfa rspec" - print RSpecConverter.to_sfa_rspec(pg_rspec) - - print "converting sfa rspec to pg rspec" - print RSpecConverter.to_pg_rspec(sfa_rspec) + print("converting sfa rspec to pg rspec") + print(RSpecConverter.to_pg_rspec(sfa_rspec))