################################################## 
# RPC_Literal_TestDefinitions_services.py 
# generated by ZSI.generate.wsdl2python
##################################################


from RPC_Literal_TestDefinitions_services_types import *
import urlparse, types
from ZSI.TCcompound import ComplexType, Struct
from ZSI import client
import ZSI

# Locator
class WhiteMesaSoapRpcLitTestSvcLocator:
    SoapTestPortTypeRpc_address = "http://www.whitemesa.net/test-rpc-lit"
    def getSoapTestPortTypeRpcAddress(self):
        return WhiteMesaSoapRpcLitTestSvcLocator.SoapTestPortTypeRpc_address
    def getSoapTestPortTypeRpc(self, url=None, **kw):
        return Soap11TestRpcLitBindingSOAP(url or WhiteMesaSoapRpcLitTestSvcLocator.SoapTestPortTypeRpc_address, **kw)

# Methods
class Soap11TestRpcLitBindingSOAP:
    def __init__(self, url, **kw):
        kw.setdefault("readerclass", None)
        kw.setdefault("writerclass", None)
        # no resource properties
        self.binding = client.Binding(url=url, **kw)
        # no ws-addressing

    # op: echoStruct
    def echoStruct(self, request):
        if isinstance(request, echoStructRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoStructResponse.typecode)
        if isinstance(response, echoStructResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoStructArray
    def echoStructArray(self, request):
        if isinstance(request, echoStructArrayRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoStructArrayResponse.typecode)
        if isinstance(response, echoStructArrayResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoStructAsSimpleTypes
    def echoStructAsSimpleTypes(self, request):
        if isinstance(request, echoStructAsSimpleTypesRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoStructAsSimpleTypesResponse.typecode)
        if isinstance(response, echoStructAsSimpleTypesResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoSimpleTypesAsStruct
    def echoSimpleTypesAsStruct(self, request):
        if isinstance(request, echoSimpleTypesAsStructRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoSimpleTypesAsStructResponse.typecode)
        if isinstance(response, echoSimpleTypesAsStructResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoNestedStruct
    def echoNestedStruct(self, request):
        if isinstance(request, echoNestedStructRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoNestedStructResponse.typecode)
        if isinstance(response, echoNestedStructResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoNestedArray
    def echoNestedArray(self, request):
        if isinstance(request, echoNestedArrayRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoNestedArrayResponse.typecode)
        if isinstance(response, echoNestedArrayResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoStringArray
    def echoStringArray(self, request):
        if isinstance(request, echoStringArrayRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoStringArrayResponse.typecode)
        if isinstance(response, echoStringArrayResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoIntegerArray
    def echoIntegerArray(self, request):
        if isinstance(request, echoIntegerArrayRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoIntegerArrayResponse.typecode)
        if isinstance(response, echoIntegerArrayResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoBoolean
    def echoBoolean(self, request):
        if isinstance(request, echoBooleanRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoBooleanResponse.typecode)
        if isinstance(response, echoBooleanResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

    # op: echoString
    def echoString(self, request):
        if isinstance(request, echoStringRequest) is False:
            raise TypeError, "%s incorrect request type" % (request.__class__)
        kw = {}
        # no input wsaction
        self.binding.Send(None, None, request, soapaction="http://soapinterop.org/", **kw)
        # no output wsaction
        response = self.binding.Receive(echoStringResponse.typecode)
        if isinstance(response, echoStringResponse.typecode.pyclass) is False:
            raise TypeError, "%s incorrect response type" % (response.__class__)
        return response

class echoStructRequest:
    def __init__(self):
        self._inputStruct = None
echoStructRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStruct"), ofwhat=[ns1.SOAPStruct_Def(pname="inputStruct", aname="_inputStruct", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructRequest)

class echoStructResponse:
    def __init__(self):
        self._return = None
echoStructResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStructResponse"), ofwhat=[ns1.SOAPStruct_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructResponse)

class echoStructArrayRequest:
    def __init__(self):
        self._inputStructArray = None
echoStructArrayRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStructArray"), ofwhat=[ns1.ArrayOfSOAPStruct_Def(pname="inputStructArray", aname="_inputStructArray", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructArrayRequest)

class echoStructArrayResponse:
    def __init__(self):
        self._return = None
echoStructArrayResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStructArrayResponse"), ofwhat=[ns1.ArrayOfSOAPStruct_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructArrayResponse)

class echoStructAsSimpleTypesRequest:
    def __init__(self):
        self._inputStruct = None
echoStructAsSimpleTypesRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStructAsSimpleTypes"), ofwhat=[ns1.SOAPStruct_Def(pname="inputStruct", aname="_inputStruct", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructAsSimpleTypesRequest)

class echoStructAsSimpleTypesResponse:
    def __init__(self):
        self._outputString = None
        self._outputInteger = None
        self._outputFloat = None
echoStructAsSimpleTypesResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStructAsSimpleTypesResponse"), ofwhat=[ZSI.TC.String(pname="outputString", aname="_outputString", encoded=None, minOccurs=1, maxOccurs=1, nillable=True), ZSI.TCnumbers.Iint(pname="outputInteger", aname="_outputInteger", encoded=None, minOccurs=1, maxOccurs=1, nillable=True), ZSI.TCnumbers.FPfloat(pname="outputFloat", aname="_outputFloat", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStructAsSimpleTypesResponse)

class echoSimpleTypesAsStructRequest:
    def __init__(self):
        self._inputString = None
        self._inputInteger = None
        self._inputFloat = None
echoSimpleTypesAsStructRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoSimpleTypesAsStruct"), ofwhat=[ZSI.TC.String(pname="inputString", aname="_inputString", encoded=None, minOccurs=1, maxOccurs=1, nillable=True), ZSI.TCnumbers.Iint(pname="inputInteger", aname="_inputInteger", encoded=None, minOccurs=1, maxOccurs=1, nillable=True), ZSI.TCnumbers.FPfloat(pname="inputFloat", aname="_inputFloat", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoSimpleTypesAsStructRequest)

class echoSimpleTypesAsStructResponse:
    def __init__(self):
        self._return = None
echoSimpleTypesAsStructResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoSimpleTypesAsStructResponse"), ofwhat=[ns1.SOAPStruct_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoSimpleTypesAsStructResponse)

class echoNestedStructRequest:
    def __init__(self):
        self._inputStruct = None
echoNestedStructRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoNestedStruct"), ofwhat=[ns1.SOAPStructStruct_Def(pname="inputStruct", aname="_inputStruct", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoNestedStructRequest)

class echoNestedStructResponse:
    def __init__(self):
        self._return = None
echoNestedStructResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoNestedStructResponse"), ofwhat=[ns1.SOAPStructStruct_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoNestedStructResponse)

class echoNestedArrayRequest:
    def __init__(self):
        self._inputStruct = None
echoNestedArrayRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoNestedArray"), ofwhat=[ns1.SOAPArrayStruct_Def(pname="inputStruct", aname="_inputStruct", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoNestedArrayRequest)

class echoNestedArrayResponse:
    def __init__(self):
        self._return = None
echoNestedArrayResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoNestedArrayResponse"), ofwhat=[ns1.SOAPArrayStruct_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoNestedArrayResponse)

class echoStringArrayRequest:
    def __init__(self):
        self._inputStringArray = None
echoStringArrayRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStringArray"), ofwhat=[ns1.ArrayOfstring_Def(pname="inputStringArray", aname="_inputStringArray", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStringArrayRequest)

class echoStringArrayResponse:
    def __init__(self):
        self._return = None
echoStringArrayResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStringArrayResponse"), ofwhat=[ns1.ArrayOfstring_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStringArrayResponse)

class echoIntegerArrayRequest:
    def __init__(self):
        self._inputIntegerArray = None
echoIntegerArrayRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoIntegerArray"), ofwhat=[ns1.ArrayOfint_Def(pname="inputIntegerArray", aname="_inputIntegerArray", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoIntegerArrayRequest)

class echoIntegerArrayResponse:
    def __init__(self):
        self._return = None
echoIntegerArrayResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoIntegerArrayResponse"), ofwhat=[ns1.ArrayOfint_Def(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoIntegerArrayResponse)

class echoBooleanRequest:
    def __init__(self):
        self._inputBoolean = None
echoBooleanRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoBoolean"), ofwhat=[ZSI.TC.Boolean(pname="inputBoolean", aname="_inputBoolean", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoBooleanRequest)

class echoBooleanResponse:
    def __init__(self):
        self._return = None
echoBooleanResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoBooleanResponse"), ofwhat=[ZSI.TC.Boolean(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoBooleanResponse)

class echoStringRequest:
    def __init__(self):
        self._inputString = None
echoStringRequest.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoString"), ofwhat=[ZSI.TC.String(pname="inputString", aname="_inputString", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStringRequest)

class echoStringResponse:
    def __init__(self):
        self._return = None
echoStringResponse.typecode = Struct(pname=("http://soapbuilders.org/rpc-lit-test","echoStringResponse"), ofwhat=[ZSI.TC.String(pname="return", aname="_return", encoded=None, minOccurs=1, maxOccurs=1, nillable=True)], pyclass=echoStringResponse)
