| #include "axis2_InteropTestPortTypeDocService_stub.h" |
| |
| int main(int argc, char** argv) |
| { |
| axis2_env_t* env = NULL; |
| axis2_char_t* client_home = NULL; |
| |
| axis2_char_t* endpoint_uri = NULL; |
| |
| axis2_stub_t* stub = NULL; |
| |
| /* variables use databinding */ |
| axis2_echoStructArray_t* echo_in = NULL; |
| axis2_echoStructArrayResponse_t* echo_out = NULL; |
| |
| axis2_SOAPStruct_t** echo_struct_arr = NULL; |
| int arr_size = 0; |
| axis2_SOAPStruct_t** ret_echo_struct_arr = NULL; |
| int ret_arr_size = 0; |
| |
| int i = 0 ; /* for for loop */ |
| |
| |
| endpoint_uri = |
| "http://localhost:9090/axis2/services/interop_doc1"; |
| |
| env = axis2_env_create_all("codegen_utest_blocking.log", |
| AXIS2_LOG_LEVEL_TRACE); |
| |
| /* Set up deploy folder.*/ |
| client_home = AXIS2_GETENV("AXIS2C_HOME"); |
| if (!client_home) |
| client_home = "../../../deploy"; |
| |
| stub = axis2_InteropTestPortTypeDocService_stub_create(env, |
| client_home , endpoint_uri); |
| |
| /* create the struct array */ |
| arr_size = 3; |
| echo_struct_arr = (axis2_SOAPStruct_t**) malloc |
| (arr_size * sizeof(axis2_SOAPStruct_t*)); |
| |
| echo_struct_arr[0] = axis2_SOAPStruct_create(env); |
| AXIS2_SOAPSTRUCT_SET_VARSTRING(echo_struct_arr[0], env, "sturct0"); |
| AXIS2_SOAPSTRUCT_SET_VARINT(echo_struct_arr[0], env, 0); |
| AXIS2_SOAPSTRUCT_SET_VARFLOAT(echo_struct_arr[0], env, 0); |
| |
| echo_struct_arr[1] = axis2_SOAPStruct_create(env); |
| AXIS2_SOAPSTRUCT_SET_VARSTRING(echo_struct_arr[1], env, "sturct1"); |
| AXIS2_SOAPSTRUCT_SET_VARINT(echo_struct_arr[1], env, 10); |
| AXIS2_SOAPSTRUCT_SET_VARFLOAT(echo_struct_arr[1], env, 100); |
| |
| echo_struct_arr[2] = axis2_SOAPStruct_create(env); |
| AXIS2_SOAPSTRUCT_SET_VARSTRING(echo_struct_arr[2], env, "sturct2"); |
| AXIS2_SOAPSTRUCT_SET_VARINT(echo_struct_arr[2], env, 20); |
| AXIS2_SOAPSTRUCT_SET_VARFLOAT(echo_struct_arr[2], env, 200); |
| |
| /* create the struct */ |
| echo_in = axis2_echoStructArray_create(env); |
| AXIS2_ECHOSTRUCTARRAY_SET_ARG_0_7(echo_in, env, echo_struct_arr, arr_size); |
| |
| /* invoke the web service method*/ |
| echo_out = axis2_echoStructArray(stub, env, echo_in); |
| |
| ret_echo_struct_arr = |
| AXIS2_ECHOSTRUCTARRAYRESPONSE_GET_ECHOSTRUCTARRAYRETURN |
| (echo_out, env , &ret_arr_size); |
| for (i = 0; i < ret_arr_size ; i ++) |
| { |
| printf("recieved turn %d \n string %s\n int %d\n float %f\n\n", i, |
| AXIS2_SOAPSTRUCT_GET_VARSTRING(ret_echo_struct_arr[i], env), |
| AXIS2_SOAPSTRUCT_GET_VARINT(ret_echo_struct_arr[i], env), |
| AXIS2_SOAPSTRUCT_GET_VARFLOAT(ret_echo_struct_arr[i], env)); |
| } |
| return 0; |
| } |