cleaned up imports
[sfa.git] / sfa / util / rspec.py
index c56d382..ffc816c 100644 (file)
@@ -1,44 +1,13 @@
-### $Id$
-### $URL$
-
 import sys
 import pprint
 import os
+from StringIO import StringIO
+from types import StringTypes, ListType
 import httplib
 from xml.dom import minidom
-from types import StringTypes, ListType
 from lxml import etree
-from StringIO import StringIO
-
-def merge_rspecs(rspecs):
-    """
-    Merge merge a set of RSpecs into 1 RSpec, and return the result.
-    rspecs must be a valid RSpec string or list of rspec strings. 
-    """
-    if not rspecs or not isinstance(rspecs, list):
-        return rspecs
-    
-    rspec = None
-    for tmp_rspec in rspecs:
-        try:
-            tree = etree.parse(StringIO(tmp_rspec))
-        except etree.XMLSyntaxError:
-            # consider failing silently here
-            message = str(agg_rspec) + ": " + str(sys.exc_info()[1])
-            raise InvalidRSpec(message)
-
-        root = tree.getroot()
-        if root.get("type") in ["SFA"]:
-            if rspec == None:
-                rspec = root
-            else:
-                for network in root.iterfind("./network"):
-                    rspec.append(deepcopy(network))
-                for request in root.iterfind("./request"):
-                    rspec.append(deepcopy(request))    
-    return etree.tostring(rspec, xml_declaration=True, pretty_print=True)
-        
 
+from sfa.util.sfalogging import sfa_logger
 
 class RSpec:
 
@@ -263,15 +232,14 @@ class RSpec:
             except Exception, e:
                 # logging.debug("%s: web file not found" % xsdURI)
                 # logging.debug("Using local file %s" % self.xsd")
-                print e
-                print "Can't find %s on the web. Continuing." % xsdURI
+                sfa_logger().log_exc("rspec.parseXSD: can't find %s on the web. Continuing." % xsdURI)
         if not schemaDom:
             if os.path.exists(xsdURI):
                 # logging.debug("using local copy.")
-                print "Using local %s" % xsdURI
+                sfa_logger().debug("rspec.parseXSD: Using local %s" % xsdURI)
                 schemaDom = minidom.parse(xsdURI)
             else:
-                raise Exception("Can't find xsd locally")
+                raise Exception("rspec.parseXSD: can't find xsd locally")
         self.schemaDict = self.toDict(schemaDom.childNodes[0])