axis2_wsdl_binding_op.h

Go to the documentation of this file.
00001 /*
00002 * Copyright 2004,2005 The Apache Software Foundation.
00003 *
00004 * Licensed under the Apache License, Version 2.0 (the "License");
00005 * you may not use this file except in compliance with the License.
00006 * You may obtain a copy of the License at
00007 *
00008 *      http://www.apache.org/licenses/LICENSE-2.0
00009 *
00010 * Unless required by applicable law or agreed to in writing, software
00011 * distributed under the License is distributed on an "AS IS" BASIS,
00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013 * See the License for the specific language governing permissions and
00014 * limitations under the License.
00015 */
00016 
00017 #ifndef AXIS2_WSDL_BINDING_OP_H
00018 #define AXIS2_WSDL_BINDING_OP_H
00019 
00024 #include <axis2_const.h>
00025 #include <axis2_error.h>
00026 #include <axis2_defines.h>
00027 #include <axis2_env.h>
00028 #include <axis2_allocator.h>
00029 #include <axis2_string.h>
00030 #include <axis2_hash.h>
00031 #include <axis2_linked_list.h>
00032 #include <axis2_qname.h>
00033 #include <axis2_wsdl_extensible_component.h>
00034 #include <axis2_wsdl_binding_msg_ref.h>
00035 #include <axis2_wsdl_op.h>
00036 #include <axis2_wsdl_binding_fault.h>
00037 
00038 #ifdef __cplusplus
00039 extern "C"
00040 {
00041 #endif
00042 
00043 struct axis2_wsdl_binding_msg_ref;
00044 struct axis2_wsdl_binding_fault;
00045 struct axis2_wsdl_extensible_component;   
00046 typedef struct axis2_wsdl_binding_op_ops axis2_wsdl_binding_op_ops_t;
00047 typedef struct axis2_wsdl_binding_op axis2_wsdl_binding_op_t;
00048    
00058 struct axis2_wsdl_binding_op_ops
00059 {
00063     axis2_status_t (AXIS2_CALL *
00064     free) (axis2_wsdl_binding_op_t *wsdl_binding_op, 
00065                                         const axis2_env_t *env);
00066     
00072     struct axis2_wsdl_binding_msg_ref * (AXIS2_CALL *
00073     get_input) (axis2_wsdl_binding_op_t *binding_op,
00074                                             const axis2_env_t *env);
00075     
00076     
00082     axis2_status_t (AXIS2_CALL *
00083     set_input) (axis2_wsdl_binding_op_t *binding_op,
00084                 const axis2_env_t *env,
00085                 struct axis2_wsdl_binding_msg_ref *input);
00086     
00092     void *(AXIS2_CALL *
00093     get_op) (axis2_wsdl_binding_op_t *binding_op,
00094                                         const axis2_env_t *env);
00095     
00101     axis2_status_t (AXIS2_CALL *
00102     set_op)(axis2_wsdl_binding_op_t *binding_op,
00103                 const axis2_env_t *env,
00104                 void *op);
00105     
00111     struct axis2_wsdl_binding_msg_ref * (AXIS2_CALL *
00112     get_output)(axis2_wsdl_binding_op_t *binding_op,
00113                                             const axis2_env_t *env);
00114     
00120     axis2_status_t (AXIS2_CALL *
00121     set_output) (axis2_wsdl_binding_op_t *binding_op,
00122                                             const axis2_env_t *env,
00123                                             struct axis2_wsdl_binding_msg_ref *output);
00124     
00130     axis2_qname_t *(AXIS2_CALL *
00131     get_qname) (axis2_wsdl_binding_op_t *binding_op,
00132                                         const axis2_env_t *env);
00133     
00139     axis2_status_t (AXIS2_CALL *
00140     set_qname) (axis2_wsdl_binding_op_t *binding_op,
00141                                                 const axis2_env_t *env,
00142                                                 axis2_qname_t *qname);
00143     
00149     axis2_status_t (AXIS2_CALL *
00150     add_in_fault) (axis2_wsdl_binding_op_t *binding_op,
00151                                                 const axis2_env_t *env,
00152                                                 struct axis2_wsdl_binding_fault *in_fault);
00153     
00159     axis2_status_t (AXIS2_CALL *
00160     add_out_fault) (axis2_wsdl_binding_op_t *binding_op,
00161                                                 const axis2_env_t *env,
00162                                                 struct axis2_wsdl_binding_fault *out_fault);
00163     
00164     axis2_linked_list_t * (AXIS2_CALL *
00165     get_in_faults) (axis2_wsdl_binding_op_t *binding_op,
00166                                                 const axis2_env_t *env);
00167     
00168     axis2_status_t (AXIS2_CALL *
00169     set_in_faults) (axis2_wsdl_binding_op_t *binding_op,
00170                                                 const axis2_env_t *env,
00171                                                 axis2_linked_list_t *in_faults);
00172     
00173     axis2_linked_list_t * (AXIS2_CALL *
00174     get_out_faults) (axis2_wsdl_binding_op_t *binding_op,
00175                                                 const axis2_env_t *env);
00176     
00177     axis2_status_t (AXIS2_CALL *
00178     set_out_faults) (axis2_wsdl_binding_op_t *binding_op,
00179                                                 const axis2_env_t *env,
00180                                                 axis2_linked_list_t *out_faults);
00181 };
00182 
00188 struct axis2_wsdl_binding_op
00189 {
00190    axis2_wsdl_binding_op_ops_t *ops;
00191     struct axis2_wsdl_extensible_component *extensible_component;
00192 };
00193 
00197 AXIS2_EXTERN axis2_wsdl_binding_op_t * AXIS2_CALL 
00198 axis2_wsdl_binding_op_create (const axis2_env_t *env);
00199 
00200 /**************************** Start of function macros ************************/
00201 
00202 #define AXIS2_WSDL_BINDING_OP_FREE(wsdl_binding_op, env) \
00203       ((wsdl_binding_op)->ops->free (wsdl_binding_op, env))
00204 
00205 #define AXIS2_WSDL_BINDING_OP_SET_INPUT(wsdl_binding_op, env, input) \
00206       ((wsdl_binding_op)->ops->set_input(wsdl_binding_op , env, input))
00207    
00208 #define AXIS2_WSDL_BINDING_OP_GET_OP(wsdl_binding_op, env) \
00209       ((wsdl_binding_op)->ops->get_op(wsdl_binding_op, env))
00210 
00211 #define AXIS2_WSDL_BINDING_OP_SET_OP(wsdl_binding_op, env, \
00212       op) \
00213       ((wsdl_binding_op)->ops->set_op(wsdl_binding_op, env,\
00214             op))
00215       
00216 #define AXIS2_WSDL_BINDING_OP_GET_OUTPUT(wsdl_binding_op, env) \
00217       ((wsdl_binding_op)->ops->get_output(wsdl_binding_op, env))
00218         
00219 #define AXIS2_WSDL_BINDING_OP_SET_OUTPUT(wsdl_binding_op, env, output) \
00220       ((wsdl_binding_op)->ops->set_output(wsdl_binding_op, env, output))
00221 
00222 #define AXIS2_WSDL_BINDING_OP_GET_QNAME(wsdl_binding_op, env) \
00223       ((wsdl_binding_op)->ops->get_qname(wsdl_binding_op, env))
00224         
00225 #define AXIS2_WSDL_BINDING_OP_SET_QNAME(wsdl_binding_op, env, qname) \
00226       ((wsdl_binding_op)->ops->set_qname(wsdl_binding_op, env, qname))
00227 
00228 #define AXIS2_WSDL_BINDING_OP_ADD_IN_FAULT(wsdl_binding_op, env, in_fault) \
00229       ((wsdl_binding_op)->ops->add_in_fault(wsdl_binding_op, env, in_fault))
00230         
00231 #define AXIS2_WSDL_BINDING_OP_ADD_OUT_FAULT(wsdl_binding_op, env, out_fault) \
00232       ((wsdl_binding_op)->ops->add_out_fault(wsdl_binding_op, env, out_fault))
00233 
00234 #define AXIS2_WSDL_BINDING_OP_GET_IN_FAULTS(wsdl_binding_op, env) \
00235       ((wsdl_binding_op)->ops->get_in_faults(wsdl_binding_op, env))
00236         
00237 #define AXIS2_WSDL_BINDING_OP_SET_IN_FAULTS(wsdl_binding_op, env, in_faults) \
00238       ((wsdl_binding_op)->ops->set_in_faults(wsdl_binding_op, env, in_faults))        
00239 
00240 #define AXIS2_WSDL_BINDING_OP_GET_OUT_FAULTS(wsdl_binding_op, env) \
00241       ((wsdl_binding_op)->ops->get_out_faults(wsdl_binding_op, env))
00242         
00243 #define AXIS2_WSDL_BINDING_OP_SET_OUT_FAULTS(wsdl_binding_op, env, out_faults) \
00244       ((wsdl_binding_op)->ops->set_out_faults(wsdl_binding_op, env, out_faults))
00245      
00246 /**************************** End of function macros **************************/
00247 
00249 #ifdef __cplusplus
00250 }
00251 #endif
00252 
00253 #endif /*AXIS2_WSDL_BINDING_OP_H*/

Generated on Tue Oct 3 22:35:48 2006 for Axis2/C by  doxygen 1.4.7