/* soapGSNWebServiceSoap12BindingProxy.cpp
   Generated by gSOAP 2.8.7 from GSNWebService.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.
*/

#include "soapGSNWebServiceSoap12BindingProxy.h"

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy()
{	GSNWebServiceSoap12BindingProxy_init(SOAP_IO_DEFAULT, SOAP_IO_DEFAULT);
}

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy(const struct soap &_soap) : soap(_soap)
{ }

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy(const char *url)
{	GSNWebServiceSoap12BindingProxy_init(SOAP_IO_DEFAULT, SOAP_IO_DEFAULT);
	soap_endpoint = url;
}

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy(soap_mode iomode)
{	GSNWebServiceSoap12BindingProxy_init(iomode, iomode);
}

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy(const char *url, soap_mode iomode)
{	GSNWebServiceSoap12BindingProxy_init(iomode, iomode);
	soap_endpoint = url;
}

GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy(soap_mode imode, soap_mode omode)
{	GSNWebServiceSoap12BindingProxy_init(imode, omode);
}

GSNWebServiceSoap12BindingProxy::~GSNWebServiceSoap12BindingProxy()
{ }

void GSNWebServiceSoap12BindingProxy::GSNWebServiceSoap12BindingProxy_init(soap_mode imode, soap_mode omode)
{	soap_imode(this, imode);
	soap_omode(this, omode);
	soap_endpoint = NULL;
	static const struct Namespace namespaces[] =
{
	{"SOAP-ENV", "http://www.w3.org/2003/05/soap-envelope", "http://www.w3.org/2003/05/soap-envelope", NULL},
	{"SOAP-ENC", "http://www.w3.org/2003/05/soap-encoding", "http://www.w3.org/2003/05/soap-encoding", NULL},
	{"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL},
	{"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL},
	{"ns3", "http://datarequest.http.gsn/xsd", NULL, NULL},
	{"ns2", "http://standard.webservice.gsn/xsd", NULL, NULL},
	{"ns4", "http://standard.webservice.gsn/GSNWebServiceSoap12Binding", NULL, NULL},
	{"ns1", "http://standard.webservice.gsn", NULL, NULL},
	{"ns5", "http://standard.webservice.gsn/GSNWebServiceSoap11Binding", NULL, NULL},
	{NULL, NULL, NULL, NULL}
};
	soap_set_namespaces(this, namespaces);
}

void GSNWebServiceSoap12BindingProxy::destroy()
{	soap_destroy(this);
	soap_end(this);
}

void GSNWebServiceSoap12BindingProxy::soap_noheader()
{	this->header = NULL;
}

const SOAP_ENV__Header *GSNWebServiceSoap12BindingProxy::soap_header()
{	return this->header;
}

const SOAP_ENV__Fault *GSNWebServiceSoap12BindingProxy::soap_fault()
{	return this->fault;
}

const char *GSNWebServiceSoap12BindingProxy::soap_fault_string()
{	return *soap_faultstring(this);
}

const char *GSNWebServiceSoap12BindingProxy::soap_fault_detail()
{	return *soap_faultdetail(this);
}

int GSNWebServiceSoap12BindingProxy::soap_close_socket()
{	return soap_closesock(this);
}

int GSNWebServiceSoap12BindingProxy::soap_force_close_socket()
{	return soap_force_closesock(this);
}

void GSNWebServiceSoap12BindingProxy::soap_print_fault(FILE *fd)
{	::soap_print_fault(this, fd);
}

#ifndef WITH_LEAN
#ifndef WITH_COMPAT
void GSNWebServiceSoap12BindingProxy::soap_stream_fault(std::ostream& os)
{	::soap_stream_fault(this, os);
}
#endif

char *GSNWebServiceSoap12BindingProxy::soap_sprint_fault(char *buf, size_t len)
{	return ::soap_sprint_fault(this, buf, len);
}
#endif

int GSNWebServiceSoap12BindingProxy::getContainerInfo(const char *endpoint, const char *soap_action, _ns1__getContainerInfo *ns1__getContainerInfo, _ns1__getContainerInfoResponse *ns1__getContainerInfoResponse)
{	struct soap *soap = this;
	struct __ns4__getContainerInfo soap_tmp___ns4__getContainerInfo;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:getContainerInfo";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__getContainerInfo.ns1__getContainerInfo = ns1__getContainerInfo;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__getContainerInfo(soap, &soap_tmp___ns4__getContainerInfo);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__getContainerInfo(soap, &soap_tmp___ns4__getContainerInfo, "-ns4:getContainerInfo", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__getContainerInfo(soap, &soap_tmp___ns4__getContainerInfo, "-ns4:getContainerInfo", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__getContainerInfoResponse)
		return soap_closesock(soap);
	ns1__getContainerInfoResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__getContainerInfoResponse->soap_get(soap, "ns1:getContainerInfoResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::getMultiData(const char *endpoint, const char *soap_action, _ns1__getMultiData *ns1__getMultiData, _ns1__getMultiDataResponse *ns1__getMultiDataResponse)
{	struct soap *soap = this;
	struct __ns4__getMultiData soap_tmp___ns4__getMultiData;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:getMultiData";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__getMultiData.ns1__getMultiData = ns1__getMultiData;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__getMultiData(soap, &soap_tmp___ns4__getMultiData);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__getMultiData(soap, &soap_tmp___ns4__getMultiData, "-ns4:getMultiData", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__getMultiData(soap, &soap_tmp___ns4__getMultiData, "-ns4:getMultiData", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__getMultiDataResponse)
		return soap_closesock(soap);
	ns1__getMultiDataResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__getMultiDataResponse->soap_get(soap, "ns1:getMultiDataResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::listVirtualSensorNames(const char *endpoint, const char *soap_action, _ns1__listVirtualSensorNames *ns1__listVirtualSensorNames, _ns1__listVirtualSensorNamesResponse *ns1__listVirtualSensorNamesResponse)
{	struct soap *soap = this;
	struct __ns4__listVirtualSensorNames soap_tmp___ns4__listVirtualSensorNames;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:listVirtualSensorNames";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__listVirtualSensorNames.ns1__listVirtualSensorNames = ns1__listVirtualSensorNames;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__listVirtualSensorNames(soap, &soap_tmp___ns4__listVirtualSensorNames);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__listVirtualSensorNames(soap, &soap_tmp___ns4__listVirtualSensorNames, "-ns4:listVirtualSensorNames", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__listVirtualSensorNames(soap, &soap_tmp___ns4__listVirtualSensorNames, "-ns4:listVirtualSensorNames", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__listVirtualSensorNamesResponse)
		return soap_closesock(soap);
	ns1__listVirtualSensorNamesResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__listVirtualSensorNamesResponse->soap_get(soap, "ns1:listVirtualSensorNamesResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::getNextData(const char *endpoint, const char *soap_action, _ns1__getNextData *ns1__getNextData, _ns1__getNextDataResponse *ns1__getNextDataResponse)
{	struct soap *soap = this;
	struct __ns4__getNextData soap_tmp___ns4__getNextData;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:getNextData";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__getNextData.ns1__getNextData = ns1__getNextData;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__getNextData(soap, &soap_tmp___ns4__getNextData);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__getNextData(soap, &soap_tmp___ns4__getNextData, "-ns4:getNextData", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__getNextData(soap, &soap_tmp___ns4__getNextData, "-ns4:getNextData", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__getNextDataResponse)
		return soap_closesock(soap);
	ns1__getNextDataResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__getNextDataResponse->soap_get(soap, "ns1:getNextDataResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::registerQuery(const char *endpoint, const char *soap_action, _ns1__registerQuery *ns1__registerQuery, _ns1__registerQueryResponse *ns1__registerQueryResponse)
{	struct soap *soap = this;
	struct __ns4__registerQuery soap_tmp___ns4__registerQuery;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:registerQuery";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__registerQuery.ns1__registerQuery = ns1__registerQuery;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__registerQuery(soap, &soap_tmp___ns4__registerQuery);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__registerQuery(soap, &soap_tmp___ns4__registerQuery, "-ns4:registerQuery", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__registerQuery(soap, &soap_tmp___ns4__registerQuery, "-ns4:registerQuery", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__registerQueryResponse)
		return soap_closesock(soap);
	ns1__registerQueryResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__registerQueryResponse->soap_get(soap, "ns1:registerQueryResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::unregisterQuery(const char *endpoint, const char *soap_action, _ns1__unregisterQuery *ns1__unregisterQuery, _ns1__unregisterQueryResponse *ns1__unregisterQueryResponse)
{	struct soap *soap = this;
	struct __ns4__unregisterQuery soap_tmp___ns4__unregisterQuery;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:unregisterQuery";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__unregisterQuery.ns1__unregisterQuery = ns1__unregisterQuery;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__unregisterQuery(soap, &soap_tmp___ns4__unregisterQuery);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__unregisterQuery(soap, &soap_tmp___ns4__unregisterQuery, "-ns4:unregisterQuery", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__unregisterQuery(soap, &soap_tmp___ns4__unregisterQuery, "-ns4:unregisterQuery", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__unregisterQueryResponse)
		return soap_closesock(soap);
	ns1__unregisterQueryResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__unregisterQueryResponse->soap_get(soap, "ns1:unregisterQueryResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::getLatestMultiData(const char *endpoint, const char *soap_action, _ns1__getLatestMultiData *ns1__getLatestMultiData, _ns1__getLatestMultiDataResponse *ns1__getLatestMultiDataResponse)
{	struct soap *soap = this;
	struct __ns4__getLatestMultiData soap_tmp___ns4__getLatestMultiData;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:getLatestMultiData";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__getLatestMultiData.ns1__getLatestMultiData = ns1__getLatestMultiData;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__getLatestMultiData(soap, &soap_tmp___ns4__getLatestMultiData);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__getLatestMultiData(soap, &soap_tmp___ns4__getLatestMultiData, "-ns4:getLatestMultiData", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__getLatestMultiData(soap, &soap_tmp___ns4__getLatestMultiData, "-ns4:getLatestMultiData", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__getLatestMultiDataResponse)
		return soap_closesock(soap);
	ns1__getLatestMultiDataResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__getLatestMultiDataResponse->soap_get(soap, "ns1:getLatestMultiDataResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::deleteVirtualSensor(const char *endpoint, const char *soap_action, _ns1__deleteVirtualSensor *ns1__deleteVirtualSensor, _ns1__deleteVirtualSensorResponse *ns1__deleteVirtualSensorResponse)
{	struct soap *soap = this;
	struct __ns4__deleteVirtualSensor soap_tmp___ns4__deleteVirtualSensor;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:deleteVirtualSensor";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__deleteVirtualSensor.ns1__deleteVirtualSensor = ns1__deleteVirtualSensor;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__deleteVirtualSensor(soap, &soap_tmp___ns4__deleteVirtualSensor);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__deleteVirtualSensor(soap, &soap_tmp___ns4__deleteVirtualSensor, "-ns4:deleteVirtualSensor", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__deleteVirtualSensor(soap, &soap_tmp___ns4__deleteVirtualSensor, "-ns4:deleteVirtualSensor", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__deleteVirtualSensorResponse)
		return soap_closesock(soap);
	ns1__deleteVirtualSensorResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__deleteVirtualSensorResponse->soap_get(soap, "ns1:deleteVirtualSensorResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::getVirtualSensorsDetails(const char *endpoint, const char *soap_action, _ns1__getVirtualSensorsDetails *ns1__getVirtualSensorsDetails, _ns1__getVirtualSensorsDetailsResponse *ns1__getVirtualSensorsDetailsResponse)
{	struct soap *soap = this;
	struct __ns4__getVirtualSensorsDetails soap_tmp___ns4__getVirtualSensorsDetails;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:getVirtualSensorsDetails";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__getVirtualSensorsDetails.ns1__getVirtualSensorsDetails = ns1__getVirtualSensorsDetails;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__getVirtualSensorsDetails(soap, &soap_tmp___ns4__getVirtualSensorsDetails);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__getVirtualSensorsDetails(soap, &soap_tmp___ns4__getVirtualSensorsDetails, "-ns4:getVirtualSensorsDetails", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__getVirtualSensorsDetails(soap, &soap_tmp___ns4__getVirtualSensorsDetails, "-ns4:getVirtualSensorsDetails", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__getVirtualSensorsDetailsResponse)
		return soap_closesock(soap);
	ns1__getVirtualSensorsDetailsResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__getVirtualSensorsDetailsResponse->soap_get(soap, "ns1:getVirtualSensorsDetailsResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::createVirtualSensor(const char *endpoint, const char *soap_action, _ns1__createVirtualSensor *ns1__createVirtualSensor, _ns1__createVirtualSensorResponse *ns1__createVirtualSensorResponse)
{	struct soap *soap = this;
	struct __ns4__createVirtualSensor soap_tmp___ns4__createVirtualSensor;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:createVirtualSensor";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__createVirtualSensor.ns1__createVirtualSensor = ns1__createVirtualSensor;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__createVirtualSensor(soap, &soap_tmp___ns4__createVirtualSensor);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__createVirtualSensor(soap, &soap_tmp___ns4__createVirtualSensor, "-ns4:createVirtualSensor", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__createVirtualSensor(soap, &soap_tmp___ns4__createVirtualSensor, "-ns4:createVirtualSensor", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__createVirtualSensorResponse)
		return soap_closesock(soap);
	ns1__createVirtualSensorResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__createVirtualSensorResponse->soap_get(soap, "ns1:createVirtualSensorResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}

int GSNWebServiceSoap12BindingProxy::listWrapperURLs(const char *endpoint, const char *soap_action, _ns1__listWrapperURLs *ns1__listWrapperURLs, _ns1__listWrapperURLsResponse *ns1__listWrapperURLsResponse)
{	struct soap *soap = this;
	struct __ns4__listWrapperURLs soap_tmp___ns4__listWrapperURLs;
	if (endpoint)
		soap_endpoint = endpoint;
	if (!soap_endpoint)
		soap_endpoint = "http://195.176.244.23:22002/services/GSNWebService/";
	if (!soap_action)
		soap_action = "urn:listWrapperURLs";
	soap->encodingStyle = NULL;
	soap_tmp___ns4__listWrapperURLs.ns1__listWrapperURLs = ns1__listWrapperURLs;
	soap_begin(soap);
	soap_serializeheader(soap);
	soap_serialize___ns4__listWrapperURLs(soap, &soap_tmp___ns4__listWrapperURLs);
	if (soap_begin_count(soap))
		return soap->error;
	if (soap->mode & SOAP_IO_LENGTH)
	{	if (soap_envelope_begin_out(soap)
		 || soap_putheader(soap)
		 || soap_body_begin_out(soap)
		 || soap_put___ns4__listWrapperURLs(soap, &soap_tmp___ns4__listWrapperURLs, "-ns4:listWrapperURLs", NULL)
		 || soap_body_end_out(soap)
		 || soap_envelope_end_out(soap))
			 return soap->error;
	}
	if (soap_end_count(soap))
		return soap->error;
	if (soap_connect(soap, soap_endpoint, soap_action)
	 || soap_envelope_begin_out(soap)
	 || soap_putheader(soap)
	 || soap_body_begin_out(soap)
	 || soap_put___ns4__listWrapperURLs(soap, &soap_tmp___ns4__listWrapperURLs, "-ns4:listWrapperURLs", NULL)
	 || soap_body_end_out(soap)
	 || soap_envelope_end_out(soap)
	 || soap_end_send(soap))
		return soap_closesock(soap);
	if (!ns1__listWrapperURLsResponse)
		return soap_closesock(soap);
	ns1__listWrapperURLsResponse->soap_default(soap);
	if (soap_begin_recv(soap)
	 || soap_envelope_begin_in(soap)
	 || soap_recv_header(soap)
	 || soap_body_begin_in(soap))
		return soap_closesock(soap);
	ns1__listWrapperURLsResponse->soap_get(soap, "ns1:listWrapperURLsResponse", "");
	if (soap->error)
		return soap_recv_fault(soap, 0);
	if (soap_body_end_in(soap)
	 || soap_envelope_end_in(soap)
	 || soap_end_recv(soap))
		return soap_closesock(soap);
	return soap_closesock(soap);
}
/* End of client proxy code */
