summaryrefslogtreecommitdiff
path: root/suds/xsd/doctor.py
diff options
context:
space:
mode:
Diffstat (limited to 'suds/xsd/doctor.py')
-rw-r--r--suds/xsd/doctor.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/suds/xsd/doctor.py b/suds/xsd/doctor.py
index 84c9151..2ac3521 100644
--- a/suds/xsd/doctor.py
+++ b/suds/xsd/doctor.py
@@ -22,6 +22,7 @@ schema(s).
from logging import getLogger
from suds.sax import splitPrefix, Namespace
from suds.sax.element import Element
+from suds.plugin import Plugin
log = getLogger(__name__)
@@ -186,7 +187,7 @@ class Import:
return 0
-class ImportDoctor(Doctor):
+class ImportDoctor(Doctor, Plugin):
"""
Doctor used to fix missing imports.
@ivar imports: A list of imports to apply.
@@ -210,3 +211,10 @@ class ImportDoctor(Doctor):
def examine(self, root):
for imp in self.imports:
imp.apply(root)
+
+ def onLoad(self, context):
+ root = context.root
+ if root.get('name') == 'schema':
+ self.examine(root)
+ else:
+ pass \ No newline at end of file