Require LXML (maybe I'll fix this later).
[cas.git] / provider / cas_provider / etree.py
index 3f95751..9f992b8 100644 (file)
@@ -1,32 +1,16 @@
-# Import etree from anywhere
-try:
-    # lxml http://codespeak.net/lxml/
-    from lxml import etree
-    
-    # Define register_namespace function and ElementRoot for proper serialization
-    NSMAP = {}
-    def register_namespace(prefix, uri):
-        NSMAP[prefix] = uri
-    
-    def ElementRoot(*args, **kwargs):
-        kwargs['nsmap'] = NSMAP
-        return etree.Element(*args, **kwargs)
+# lxml http://codespeak.net/lxml/
+from lxml import etree
 
-except ImportError:
-    try:
-        # normal cElementTree install
-        import cElementTree as etree
-    except ImportError:
-        # normal ElementTree install
-        import elementtree.ElementTree as etree
+# Define register_namespace function and ElementRoot for proper serialization
+NSMAP = {}
 
-    try:
-        register_namespace = etree.register_namespace
-    except AttributeError:
-        def register_namespace(prefix, uri):
-            etree._namespace_map[uri] = prefix
 
-    def ElementRoot(*args, **kwargs):
-        return etree.Element(*args, **kwargs)
+def register_namespace(prefix, uri):
+    NSMAP[prefix] = uri
+
+
+def ElementRoot(*args, **kwargs):
+    kwargs['nsmap'] = NSMAP
+    return etree.Element(*args, **kwargs)
 
 __all__ = ('etree', 'register_namespace', 'ElementRoot')