示例#1
0
    def download(self, options):
        """ download the schema """
        try:
            reader = DocumentReader(options)
            d = yield reader.open(self.url)
            root = d.root()
            root.set('url', self.url)

            schema = yield self.build_schema(root, options)
            defer.returnValue(schema)
        except TransportError:
            msg = 'imported schema (%s) at (%s), failed' % (self.ns[1], self.url)
            log.error('%s, %s', self.id, msg, exc_info=True)
            raise Exception(msg)
示例#2
0
 def build(self):
     log.debug('reading wsdl at: %s ...', self.url)
     reader = DocumentReader(self.options)
     d = yield reader.open(self.url)
     root = d.root()
     WObject.__init__(self, root)
     self.root = root
     self.tns = self.mktns(root)
     self.add_children(self.root)
     self.children.sort()
     yield self.open_imports()
     self.resolve()
     yield self.build_schema()
     self.set_wrapped()
     for s in self.services:
         self.add_methods(s)
     log.debug("wsdl at '%s' loaded:\n%s", self.url, self)