Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
zeep / tornado / bindings.py
Size: Mime:
from tornado import gen

from zeep.wsdl import bindings

__all__ = ["AsyncSoap11Binding", "AsyncSoap12Binding"]


class AsyncSoapBinding(object):
    @gen.coroutine
    def send(self, client, options, operation, args, kwargs):
        envelope, http_headers = self._create(
            operation, args, kwargs, client=client, options=options
        )

        response = yield client.transport.post_xml(
            options["address"], envelope, http_headers
        )

        operation_obj = self.get(operation)
        raise gen.Return(self.process_reply(client, operation_obj, response))


class AsyncSoap11Binding(AsyncSoapBinding, bindings.Soap11Binding):
    pass


class AsyncSoap12Binding(AsyncSoapBinding, bindings.Soap12Binding):
    pass