From: Tony Mack Date: Mon, 25 Apr 2011 19:06:16 +0000 (-0400) Subject: initial checkin X-Git-Tag: sfa-1.0-21-ckp1~60 X-Git-Url: http://git.onelab.eu/?p=sfa.git;a=commitdiff_plain;h=da0f5b95b6a42ee079ecbe39b152969b93286b84 initial checkin --- diff --git a/sfa/rspecs/rspec_parser.py b/sfa/rspecs/rspec_parser.py new file mode 100755 index 00000000..9ab9e7f4 --- /dev/null +++ b/sfa/rspecs/rspec_parser.py @@ -0,0 +1,33 @@ +#!/usr/bin/python +from sfa.rspecs.sfa_rspec import SfaRSpec +from sfa.rspecs.pg_rspec import PGRSpec +from sfa.rspecs.rspec import RSpec +from lxml import etree + +def parse_rspec(in_rspec): + rspec = RSpec(rspec=in_rspec) + # really simple check + # TODO: check against schema instead + out_rspec = None + if rspec.xml.xpath('//network'): + #out_rspec = SfaRSpec(in_rspec) + out_rspec = SfaRSpec() + out_rspec.xml = rspec + else: + #out_rspec = PGRSpec(in_rspec) + out_rspec = PGRSpec() + out_rspec.xml = rspec + return out_rspec + + +if __name__ == '__main__': + + print "Parsing SFA RSpec:", + rspec = parse_rspec('nodes.rspec') + print rspec.type + rspec = parse_rspec('protogeni.rspec') + print "Parsing ProtoGENI RSpec:", + print rspec.type + + +