X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Frspecs%2Fversion_manager.py;h=cedd54f1b918bad1441e26820c07e7fee368c70d;hb=fad16c7d54b658b37a9b42fbee47b0d4f51cb8ec;hp=4e60bacb6bdc9fb17487c2d0bd92f499d840f8dd;hpb=8bf2388afc7410f17bc0c2b716aef89b3e52ab94;p=sfa.git diff --git a/sfa/rspecs/version_manager.py b/sfa/rspecs/version_manager.py index 4e60bacb..cedd54f1 100644 --- a/sfa/rspecs/version_manager.py +++ b/sfa/rspecs/version_manager.py @@ -1,3 +1,5 @@ +from __future__ import print_function + import os from sfa.util.faults import InvalidRSpec, UnsupportedRSpecVersion from sfa.rspecs.version import RSpecVersion @@ -8,6 +10,11 @@ class VersionManager: self.versions = [] self.load_versions() + def __repr__(self): + return ""\ + .format(len(self.versions), + ", ".join( [ str(x) for x in self.versions ])) + def load_versions(self): path = os.path.dirname(os.path.abspath( __file__ )) versions_path = path + os.sep + 'versions' @@ -71,23 +78,24 @@ class VersionManager: raise InvalidRSpec("Unkwnown RSpec schema: %s" % schema) return retval -def show_by_string(string): - try: - print v.get_version(string) - except Exception,e: - print e -def show_by_schema(string): - try: - print v.get_version_by_schema(string) - except Exception,e: - print e + def show_by_string(self, string): + try: + print(self.get_version(string)) + except Exception as e: + print(e) + + def show_by_schema(self, string): + try: + print(self.get_version_by_schema(string)) + except Exception as e: + print(e) if __name__ == '__main__': - v = VersionManager() - print v.versions - show_by_string('sfa 1') - show_by_string('protogeni 2') - show_by_string('protogeni 2 advertisement') - show_by_schema('http://www.protogeni.net/resources/rspec/2/ad.xsd') - show_by_schema('http://sorch.netmode.ntua.gr/ws/RSpec/ad.xsd') + manager = VersionManager() + print(manager) + manager.show_by_string('sfa 1') + manager.show_by_string('protogeni 2') + manager.show_by_string('protogeni 2 advertisement') + manager.show_by_schema('http://www.protogeni.net/resources/rspec/2/ad.xsd') + manager.show_by_schema('http://sorch.netmode.ntua.gr/ws/RSpec/ad.xsd')