axis2_transport_in_desc.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_TRANSPORT_IN_DESC_H
00018 #define AXIS2_TRANSPORT_IN_DESC_H
00019 
00038 #include <axis2_const.h>
00039 #include <axis2_error.h>
00040 #include <axis2_defines.h>
00041 #include <axis2_env.h>
00042 #include <axis2_allocator.h>
00043 #include <axis2_qname.h>
00044 #include <axis2_array_list.h> 
00045 /*#include <axis2_transport_receiver.h>*/
00046 #include <axis2_phase_meta.h>
00047 #include <axis2_phase.h>
00048 #include <axis2_flow.h>
00049 
00050 #ifdef __cplusplus
00051 extern "C"
00052 {
00053 #endif
00054 
00056     typedef struct axis2_transport_in_desc axis2_transport_in_desc_t;
00058     typedef struct axis2_transport_in_desc_ops axis2_transport_in_desc_ops_t;
00059 
00060     struct axis2_phase;
00061     struct axis2_transport_receiver;
00062 
00067     struct axis2_transport_in_desc_ops
00068     {
00075         axis2_status_t (AXIS2_CALL *
00076                 free)(
00077                     axis2_transport_in_desc_t *transport_in_desc,
00078                     const axis2_env_t *env);
00079 
00087         axis2_status_t (AXIS2_CALL *
00088             free_void_arg) (
00089                     void *transport_in,
00090                     const axis2_env_t *env);
00091 
00098         const axis2_qname_t *(AXIS2_CALL *
00099                 get_qname)(
00100                     const axis2_transport_in_desc_t *transport_in,
00101                     const axis2_env_t *env);
00102 
00110         axis2_status_t (AXIS2_CALL *
00111                 set_qname)(
00112                     struct axis2_transport_in_desc *transport_in,
00113                     const axis2_env_t *env,
00114                     const axis2_qname_t *qname);
00115 
00124         struct axis2_flow *(AXIS2_CALL *
00125                 get_in_flow)(
00126                     const axis2_transport_in_desc_t *transport_in,
00127                     const axis2_env_t *env);
00128 
00138         axis2_status_t (AXIS2_CALL *
00139                 set_in_flow)(
00140                     struct axis2_transport_in_desc *transport_in,
00141                     const axis2_env_t *env,
00142                     struct axis2_flow *in_flow);
00143 
00152         struct axis2_flow *(AXIS2_CALL *
00153                 get_fault_in_flow)(
00154                     const axis2_transport_in_desc_t *transport_in,
00155                     const axis2_env_t *env);
00156 
00166         axis2_status_t (AXIS2_CALL *
00167                 set_fault_in_flow)(
00168                     struct axis2_transport_in_desc *transport_in,
00169                     const axis2_env_t *env,
00170                     struct axis2_flow *fault_in_flow);
00171 
00179         struct axis2_transport_receiver *(AXIS2_CALL *
00180                 get_recv)(
00181                     const axis2_transport_in_desc_t *transport_in,
00182                     const axis2_env_t *env);
00183 
00192         axis2_status_t (AXIS2_CALL *
00193                 set_recv)(
00194                     struct axis2_transport_in_desc *transport_in,
00195                     const axis2_env_t *env,
00196                     struct axis2_transport_receiver *recv);
00197 
00204         struct axis2_phase *(AXIS2_CALL *
00205                 get_in_phase)(
00206                     const axis2_transport_in_desc_t *transport_in,
00207                     const axis2_env_t *env);
00208 
00217         axis2_status_t (AXIS2_CALL *
00218                 set_in_phase)(
00219                     struct axis2_transport_in_desc *transport_in,
00220                     const axis2_env_t *env,
00221                     struct axis2_phase *in_phase);
00222 
00229         struct axis2_phase *(AXIS2_CALL *
00230                 get_fault_phase)(
00231                     const axis2_transport_in_desc_t *transport_in,
00232                     const axis2_env_t *env);
00233 
00241         axis2_status_t (AXIS2_CALL *
00242                 set_fault_phase)(
00243                     struct axis2_transport_in_desc *transport_in,
00244                     const axis2_env_t *env,
00245                     struct axis2_phase *fault_phase);
00246 
00255         axis2_status_t (AXIS2_CALL *
00256                 add_param)(
00257                     axis2_transport_in_desc_t *transport_in_desc,
00258                     const axis2_env_t *env,
00259                     axis2_param_t *param);
00260 
00269         axis2_param_t *(AXIS2_CALL *
00270                 get_param)(
00271                     const axis2_transport_in_desc_t *transport_in_desc,
00272                     const axis2_env_t *env,
00273                     const axis2_char_t *param_name);
00274 
00282         axis2_bool_t (AXIS2_CALL *
00283                 is_param_locked)(
00284                     axis2_transport_in_desc_t *transport_in_desc,
00285                     const axis2_env_t *env,
00286                     const axis2_char_t *param_name);
00287     };
00288 
00292     struct axis2_transport_in_desc
00293     {
00295         axis2_transport_in_desc_ops_t *ops;
00297         axis2_param_container_t *param_container;
00298     };
00299 
00306     AXIS2_EXTERN axis2_transport_in_desc_t *AXIS2_CALL
00307     axis2_transport_in_desc_create_with_qname (
00308             const axis2_env_t *env,
00309             const axis2_qname_t *qname);
00310 
00318      axis2_status_t AXIS2_CALL
00319      axis2_transport_in_desc_free_void_arg(
00320             void *transport_in,
00321             const axis2_env_t *env);
00322 
00325 #define AXIS2_TRANSPORT_IN_DESC_FREE(transport_in_desc, env) \
00326       ((transport_in_desc)->ops->free (transport_in_desc, env))
00327 
00330 #define AXIS2_TRANSPORT_IN_DESC_GET_QNAME(transport_in_desc, env) \
00331       ((transport_in_desc)->ops->get_qname (transport_in_desc, env))
00332 
00335 #define AXIS2_TRANSPORT_IN_DESC_SET_QNAME(transport_in_desc, env, qname) \
00336       ((transport_in_desc)->ops->set_qname (transport_in_desc, env, qname))
00337 
00340 #define AXIS2_TRANSPORT_IN_DESC_GET_IN_FLOW(transport_in_desc, env) \
00341       ((transport_in_desc)->ops->get_in_flow (transport_in_desc, env))
00342 
00345 #define AXIS2_TRANSPORT_IN_DESC_SET_IN_FLOW(transport_in_desc, env, in_flow) \
00346       ((transport_in_desc)->ops->set_in_flow (transport_in_desc, env, in_flow))
00347 
00350 #define AXIS2_TRANSPORT_IN_DESC_GET_FAULT_IN_FLOW(transport_in_desc, env) \
00351       ((transport_in_desc)->ops->get_fault_in_flow (transport_in_desc, env))
00352 
00355 #define AXIS2_TRANSPORT_IN_DESC_SET_FAULT_IN_FLOW(transport_in_desc, env, fault_in_flow) \
00356       ((transport_in_desc)->ops->set_fault_in_flow (transport_in_desc, env, fault_in_flow))
00357 
00360 #define AXIS2_TRANSPORT_IN_DESC_GET_RECV(transport_in_desc, env) \
00361       ((transport_in_desc)->ops->get_recv (transport_in_desc, env))
00362 
00365 #define AXIS2_TRANSPORT_IN_DESC_SET_RECV(transport_in_desc, env, recv) \
00366       ((transport_in_desc)->ops->set_recv (transport_in_desc, env, recv))
00367 
00370 #define AXIS2_TRANSPORT_IN_DESC_GET_IN_PHASE(transport_in_desc, env) \
00371       ((transport_in_desc)->ops->get_in_phase (transport_in_desc, env))
00372 
00375 #define AXIS2_TRANSPORT_IN_DESC_SET_IN_PHASE(transport_in_desc, env, in_phase) \
00376       ((transport_in_desc)->ops->set_in_phase (transport_in_desc, env, in_phase))
00377 
00380 #define AXIS2_TRANSPORT_IN_DESC_GET_FAULT_PHASE(transport_in_desc, env) \
00381       ((transport_in_desc)->ops->get_fault_phase (transport_in_desc, env))
00382 
00385 #define AXIS2_TRANSPORT_IN_DESC_SET_FAULT_PHASE(transport_in_desc, env, fault_phase) \
00386       ((transport_in_desc)->ops->set_fault_phase (transport_in_desc, env, fault_phase))
00387 
00390 #define AXIS2_TRANSPORT_IN_DESC_ADD_PARAM(transport_in_desc, env, param) \
00391       ((transport_in_desc)->ops->add_param (transport_in_desc, env, param))
00392 
00395 #define AXIS2_TRANSPORT_IN_DESC_GET_PARAM(transport_in_desc, env, param_name) \
00396       ((transport_in_desc)->ops->get_param (transport_in_desc, env, param_name))
00397 
00400 #define AXIS2_TRANSPORT_IN_DESC_IS_PARAM_LOCKED(transport_in_desc, env, param_name) \
00401       ((transport_in_desc)->ops->is_param_locked (transport_in_desc, env, param_name))
00402 
00405 #ifdef __cplusplus
00406 }
00407 #endif
00408 #endif  /* AXIS2_TRANSPORT_IN_DESC_H */

Generated on Thu Aug 31 17:32:36 2006 for Axis2/C by  doxygen 1.4.6