/* IMm7MMSmm7SoapBindingProxy.h
   Generated by gSOAP 2.8.6 from IMm7MMS.h

Copyright(C) 2000-2011, Robert van Engelen, Genivia Inc. All Rights Reserved.
The generated code is released under one of the following licenses:
1) GPL or 2) Genivia's license for commercial use.
This program is released under the GPL with the additional exemption that
compiling, linking, and/or using OpenSSL is allowed.
*/

#ifndef IMm7MMSmm7SoapBindingProxy_H
#define IMm7MMSmm7SoapBindingProxy_H
#include "IMm7MMSH.h"

namespace IMm7MMS {

class SOAP_CMAC mm7SoapBindingProxy : public soap
{ public:
	/// Endpoint URL of service 'mm7SoapBindingProxy' (change as needed)
	const char *soap_endpoint;
	/// Constructor
	mm7SoapBindingProxy();
	/// Constructor with copy of another engine state
	mm7SoapBindingProxy(const struct soap&);
	/// Constructor with endpoint URL
	mm7SoapBindingProxy(const char *url);
	/// Constructor with engine input+output mode control
	mm7SoapBindingProxy(soap_mode iomode);
	/// Constructor with URL and input+output mode control
	mm7SoapBindingProxy(const char *url, soap_mode iomode);
	/// Constructor with engine input and output mode control
	mm7SoapBindingProxy(soap_mode imode, soap_mode omode);
	/// Destructor frees deserialized data
	virtual	~mm7SoapBindingProxy();
	/// Initializer used by constructors
	virtual	void mm7SoapBindingProxy_init(soap_mode imode, soap_mode omode);
	/// Delete all deserialized data (uses soap_destroy and soap_end)
	virtual	void destroy();
	/// Disables and removes SOAP Header from message
	virtual	void soap_noheader();
	/// Get SOAP Header structure (NULL when absent)
	virtual	const SOAP_ENV__Header *soap_header();
	/// Get SOAP Fault structure (NULL when absent)
	virtual	const SOAP_ENV__Fault *soap_fault();
	/// Get SOAP Fault string (NULL when absent)
	virtual	const char *soap_fault_string();
	/// Get SOAP Fault detail as string (NULL when absent)
	virtual	const char *soap_fault_detail();
	/// Close connection (normally automatic, except for send_X ops)
	virtual	int soap_close_socket();
	/// Force close connection (can kill a thread blocked on IO)
	virtual	int soap_force_close_socket();
	/// Print fault
	virtual	void soap_print_fault(FILE*);
#ifndef WITH_LEAN
	/// Print fault to stream
#ifndef WITH_COMPAT
	virtual	void soap_stream_fault(std::ostream&);
#endif

	/// Put fault into buffer
	virtual	char *soap_sprint_fault(char *buf, size_t len);
#endif

	/// Web service operation 'submitReq' (returns error code or SOAP_OK)
	virtual	int submitReq(ns1__submitReqType *ns1__SubmitReq, ns1__submitRspType *ns1__SubmitRsp) { return submitReq(NULL, NULL, ns1__SubmitReq, ns1__SubmitRsp); }
	virtual	int submitReq(const char *endpoint, const char *soap_action, ns1__submitReqType *ns1__SubmitReq, ns1__submitRspType *ns1__SubmitRsp);

	/// Web service operation 'deliverReq' (returns error code or SOAP_OK)
	virtual	int deliverReq(ns1__deliverReqType *ns1__DeliverReq, ns1__deliverRspType *ns1__DeliverRsp) { return deliverReq(NULL, NULL, ns1__DeliverReq, ns1__DeliverRsp); }
	virtual	int deliverReq(const char *endpoint, const char *soap_action, ns1__deliverReqType *ns1__DeliverReq, ns1__deliverRspType *ns1__DeliverRsp);

	/// Web service operation 'deliveryReportReq' (returns error code or SOAP_OK)
	virtual	int deliveryReportReq(ns1__deliveryReportReqType *ns1__DeliveryReportReq, ns1__genericResponseType *ns1__DeliveryReportRsp) { return deliveryReportReq(NULL, NULL, ns1__DeliveryReportReq, ns1__DeliveryReportRsp); }
	virtual	int deliveryReportReq(const char *endpoint, const char *soap_action, ns1__deliveryReportReqType *ns1__DeliveryReportReq, ns1__genericResponseType *ns1__DeliveryReportRsp);
};

} // namespace IMm7MMS

#endif