hi all,

Axis2/C code-generation requires a convention for mapping from wsdl element names to c literal names. because according to axis2/c code convention the function names, variables and types should be all simple and macros should be all capital. (This is not effect to the qnames of the element).

So I suggest following convention:

1. isolated capital letters will be replaced by '_'(underscore) and corresponding simple letter except for the first letter.

e.g: echoString -> echo_string

2. if there are capital letters in a sequence only the first will be replaced. ( this is also except for the first letter).

e.g: echoSTRING -> echo_string

if there are conflicts occurring we can give a option to ignore the conversion.

 

And I suggest function names of the generated code always prefix in following way.

for stub:
axis2_stub_<service_name>
 
for skel:
axis2_skel_<service_name> &
axis2_svc_skel_<service_name>

here I m attaching generated stubs for the InteropTestRound1Doc.wsdl using these convention..( the wsdls are in test/resources/wsdl in axis2/c svn)

regards
dimuthu

        /**
        * axis2_stub_interop_test_port_type_doc_service.h
        *
        * This file was auto-generated from WSDL for Axis2/C - stub code
        * by the Apache Axis2/Java version: #axisVersion# #today#
        */

        #include <stdio.h>
        #include <axiom.h>
        #include <axis2_util.h>
        #include <axiom_soap.h>
        #include <axis2_client.h>
        #include <axis2_stub.h>

       
        /* function prototypes - for header file*/
        /**
         * axis2_stub_interop_test_port_type_doc_service_create
         * create and return the stub with services populated
         * params - env : environment ( mandatory)
         *        - client_home : Axis2/C home ( mandatory )
         *        - endpoint_uri : service endpoint uri( optional ) - if NULL 
default picked from wsdl used
         */
        axis2_stub_t*
        axis2_stub_interop_test_port_type_doc_service_create (const axis2_env_t 
*env,
                                        axis2_char_t *client_home,
                                        axis2_char_t *endpoint_uri);
        /**
         * axis2_stub_interop_test_port_type_doc_service_populate_services
         * populate the svc in stub with the service and operations
         */
        void axis2_stub_interop_test_port_type_doc_service_populate_services( 
axis2_stub_t *stub, const axis2_env_t *env);
        /**
         * 
axis2_stub_interop_test_port_type_doc_service_get_endpoint_uri_from_wsdl
         * return the endpoint URI picked from wsdl
         */
        axis2_char_t 
*axis2_stub_interop_test_port_type_doc_service_get_endpoint_uri_from_wsdl ( 
const axis2_env_t *env );

        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_string( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_string_array( axis2_stub_t 
*stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_integer( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_integer_array( axis2_stub_t 
*stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* axis2_stub_interop_test_port_type_doc_service_echo_float( 
axis2_stub_t *stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_float_array( axis2_stub_t 
*stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_struct( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_struct_array( axis2_stub_t 
*stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* axis2_stub_interop_test_port_type_doc_service_echo_void( 
axis2_stub_t *stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_base64( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* axis2_stub_interop_test_port_type_doc_service_echo_date( 
axis2_stub_t *stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_hex_binary( axis2_stub_t 
*stub, const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_decimal( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        axiom_node_t* 
axis2_stub_interop_test_port_type_doc_service_echo_boolean( axis2_stub_t *stub, 
const axis2_env_t *env  ,
                                                axiom_node_t* param1);
        
        void axis2_stub_interop_test_port_type_doc_service_echo_string_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void 
axis2_stub_interop_test_port_type_doc_service_echo_string_array_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_integer_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void 
axis2_stub_interop_test_port_type_doc_service_echo_integer_array_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_float_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void 
axis2_stub_interop_test_port_type_doc_service_echo_float_array_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_struct_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void 
axis2_stub_interop_test_port_type_doc_service_echo_struct_array_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_void_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_base64_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_date_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void 
axis2_stub_interop_test_port_type_doc_service_echo_hex_binary_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_decimal_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
        void axis2_stub_interop_test_port_type_doc_service_echo_boolean_start( 
axis2_stub_t *stub, const axis2_env_t *env, axiom_node_t* param1,
                                                    axis2_status_t ( AXIS2_CALL 
*on_complete ) (struct axis2_callback *, const axis2_env_t* ) ,
                                                    axis2_status_t ( AXIS2_CALL 
*on_error ) (struct axis2_callback *, const axis2_env_t*, int ) );

        
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to