blob: d0e9682bf194de5c346c1e73281e1218153cc23b [file] [log] [blame]
/*
* This file was auto-generated by the Axis C++ Web Service Generator (WSDL2Ws)
* This file contains definitions of the web service
*/
#include "ComplexLists.hpp"
ComplexLists::ComplexLists()
{
}
ComplexLists::~ComplexLists()
{
}
/* This function is called by the AxisEngine when something went wrong
with the current web service request processing. Appropriate actions should
be taken here.*/
void ComplexLists::onFault()
{
}
attrlisterr* ComplexLists::multilist(m_list* Value0, attrlist* Value1)
{
xsd__string input_string;
xsd__string input_string2;
if (Value0)
{
int size = 0;
const xsd__string * items = Value0->getitem()->get(size);
if (size >= 1 && items[0])
{
input_string = new char[strlen(items[0]) + 1];
strcpy(input_string, items[0]);
}
else
{
input_string = new char[strlen("attrlist->m_list-item[0] was NULL") + 1];
strcpy(input_string, "attrlist->m_list-item[0] was NULL");
}
if (size >= 2 && items[1])
{
input_string2 = new char[strlen(items[1]) + 1];
strcpy(input_string2, items[1]);
}
else
{
input_string2 = new char[strlen("attrlist->m_list-item[1] was NULL") + 1];
strcpy(input_string2, "attrlist->m_list-item[1] was NULL");
}
}
else
{
input_string = new char[strlen("attrlist->m_list-item[0] was NULL") + 1];
strcpy(input_string, "attrlist->m_list-item[0] was NULL");
input_string2 = new char[strlen("attrlist->m_list-item[1] was NULL") + 1];
strcpy(input_string2, "attrlist->m_list-item[1] was NULL");
}
attrlisterr * ale = new attrlisterr();
attrlist * al = new attrlist();
m_list * ml = new m_list();
m_list * ml2 = new m_list();
namepair * np = new namepair();
namepair * np2 = new namepair();
namepair ** np_array = new namepair*[2];
namepair_Array * np_arr = new namepair_Array;
xsd__string * str_array = new xsd__string[2];
xsd__string_Array * str_arr = new xsd__string_Array;
xsd__string * str_array2 = new xsd__string[2];
xsd__string_Array * str_arr2 = new xsd__string_Array;
str_array[0] = input_string;
str_array[1] = NULL;
str_arr->set(str_array, 2);
delete [] str_array[0];
delete [] str_array;
ml->setitem(str_arr);
delete str_arr;
np->setm_list_Ref(ml);
np->setname("namepair return");
str_array2[0] = input_string2;
str_array2[1] = NULL;
str_arr2->set(str_array2, 2);
delete [] str_array2[0];
delete [] str_array2;
ml2->setitem(str_arr2);
delete str_arr2;
np2->setm_list_Ref(ml2);
np2->setname("namepair2 return");
np_array[0] = np;
np_array[1] = np2;
np_arr->set(np_array, 2);
delete np_array[0];
delete np_array[1];
delete [] np_array;
al->setitem(np_arr);
delete np_arr;
ale->setattrlist_Ref(al);
ale->seterrorcode(007);
ale->seterrortext("request successful");
delete Value0;
delete Value1;
return ale;
}
attrlisterr* ComplexLists::multilistnil(m_list* Value0, attrlist* Value1)
{
delete Value0;
delete Value1;
attrlisterr * pReturn = new attrlisterr();
pReturn->seterrorcode(0);
return pReturn;
}
attrlisterr* ComplexLists::complexlist(attrlist* Value0, xsd__string Value1, attrlist* Value2)
{
xsd__string input_string;
xsd__string input_string2;
bool success = false;
if (Value0)
{
int size = 0;
namepair ** items = Value0->getitem()->get(size);
if (size >= 1 && items[0])
{
m_list * ml = items[0]->getm_list_Ref();
const xsd__string * stringItems = ml->getitem()->get(size);
if (size >= 1 && stringItems[0])
{
input_string = new char[strlen(stringItems[0]) + 1];
strcpy(input_string, stringItems[0]);
success = true;
}
}
}
if (!success)
{
input_string = new char[strlen("arg1 attrlist->m_list-item[0] was NULL") + 1];
strcpy(input_string, "arg1 attrlist->m_list-item[0] was NULL");
}
success = false;
if (Value2)
{
bool success = false;
int size = 0;
namepair ** items = Value2->getitem()->get(size);
if (size >= 1 && items[0])
{
m_list * ml = items[0]->getm_list_Ref();
const xsd__string * stringItems = ml->getitem()->get(size);
if (size >= 1 && stringItems[0])
{
input_string2 = new char[strlen(stringItems[0]) + 1];
strcpy(input_string2, stringItems[0]);
success = true;
}
}
}
if (!success)
{
input_string2 = new char[strlen("arg1 attrlist->m_list-item[0] was NULL") + 1];
strcpy(input_string2, "arg3 attrlist->m_list-item[0] was NULL");
}
attrlisterr * ale = new attrlisterr();
attrlist * al = new attrlist();
namepair * np = new namepair();
namepair * np2 = new namepair();
namepair ** np_array = new namepair*[2];
namepair_Array * np_arr = new namepair_Array();
m_list * ml = new m_list();
m_list * ml2 = new m_list();
xsd__string * str_array = new xsd__string[2];
xsd__string_Array * str_arr = new xsd__string_Array();
xsd__string * str_array2 = new xsd__string[2];
xsd__string_Array * str_arr2 = new xsd__string_Array();
str_array[0] = input_string;
str_array[1] = NULL;
str_arr->set(str_array, 2);
delete [] str_array[0];
delete [] str_array;
ml->setitem(str_arr);
delete str_arr;
np->setm_list_Ref(ml);
np->setname("namepair return");
str_array2[0] = input_string2;
str_array2[1] = NULL;
str_arr2->set(str_array2, 2);
delete [] str_array2[0];
delete [] str_array2;
ml2->setitem(str_arr2);
delete str_arr2;
np2->setm_list_Ref(ml2);
np2->setname("namepair2 return");
np_array[0] = np;
np_array[1] = np2;
np_arr->set(np_array, 2);
delete np_array[0];
delete np_array[1];
delete [] np_array;
al->setitem(np_arr);
delete np_arr;
ale->setattrlist_Ref(al);
ale->seterrorcode(007);
ale->seterrortext("request successful");
delete Value0;
delete Value1;
delete Value2;
return ale;
}