Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
I am using the non-blocking web service calls as they are generated by the wsdl2c codegen tool. What I am missing in the codegeneration, however, is the context that I would like to forward as well to the non-blocking call. Specifically, what I am currently getting is the following (for the prototype in the header):
void axis2_stub_start_op_MyService_getProperties( axis2_stub_t *stub, const axutil_env_t *env,
adb_getProperties_t* _getProperties,
axis2_status_t ( AXIS2_CALL *on_complete ) (struct axis2_callback *, const axutil_env_t *) ,
axis2_status_t ( AXIS2_CALL *on_error ) (struct axis2_callback *, const axutil_env_t *, int ) )
What would be more useful, however, is the following in the prototype:
void axis2_stub_start_op_MyService_getProperties( axis2_stub_t *stub, const axutil_env_t *env,
adb_getProperties_t* _getProperties,
void *data,
axis2_status_t ( AXIS2_CALL *on_complete ) (struct axis2_callback *, const axutil_env_t *) ,
axis2_status_t ( AXIS2_CALL *on_error ) (struct axis2_callback *, const axutil_env_t *, int ) )
With the following addition in the implementation:
/* Set data object */
axis2_callback_set_data(callback, data);
This would allow users to store a context with their non-blocking call, as is customary in other languages, without having to manually change the stub after it was generated.
I generated the client stub with the following options on the wsdl2c tool: -uri myWSDL.wsdl -d adb -u