axis2_transport_in_desc.h

Go to the documentation of this file.
00001 /*
00002 * Licensed to the Apache Software Foundation (ASF) under one or more
00003 * contributor license agreements.  See the NOTICE file distributed with
00004 * this work for additional information regarding copyright ownership.
00005 * The ASF licenses this file to You under the Apache License, Version 2.0
00006 * (the "License"); you may not use this file except in compliance with
00007 * the License.  You may obtain a copy of the License at
00008 *
00009 *      http://www.apache.org/licenses/LICENSE-2.0
00010 *
00011 * Unless required by applicable law or agreed to in writing, software
00012 * distributed under the License is distributed on an "AS IS" BASIS,
00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014 * See the License for the specific language governing permissions and
00015 * limitations under the License.
00016 */
00017 
00018 #ifndef AXIS2_TRANSPORT_IN_DESC_H
00019 #define AXIS2_TRANSPORT_IN_DESC_H
00020 
00039 #include <axis2_const.h>
00040 #include <axis2_error.h>
00041 #include <axis2_defines.h>
00042 #include <axis2_env.h>
00043 #include <axis2_allocator.h>
00044 #include <axis2_qname.h>
00045 #include <axis2_array_list.h> 
00046 /*#include <axis2_transport_receiver.h>*/
00047 #include <axis2_phase_meta.h>
00048 #include <axis2_phase.h>
00049 #include <axis2_flow.h>
00050 
00051 #ifdef __cplusplus
00052 extern "C"
00053 {
00054 #endif
00055 
00057     typedef struct axis2_transport_in_desc axis2_transport_in_desc_t;
00059     typedef struct axis2_transport_in_desc_ops axis2_transport_in_desc_ops_t;
00060 
00061     struct axis2_phase;
00062     struct axis2_transport_receiver;
00063 
00068     struct axis2_transport_in_desc_ops
00069     {
00076         axis2_status_t (AXIS2_CALL *
00077                 free)(
00078                     axis2_transport_in_desc_t *transport_in_desc,
00079                     const axis2_env_t *env);
00080 
00088         axis2_status_t (AXIS2_CALL *
00089             free_void_arg) (
00090                     void *transport_in,
00091                     const axis2_env_t *env);
00092 
00099         const axis2_qname_t *(AXIS2_CALL *
00100                 get_qname)(
00101                     const axis2_transport_in_desc_t *transport_in,
00102                     const axis2_env_t *env);
00103 
00111         axis2_status_t (AXIS2_CALL *
00112                 set_qname)(
00113                     struct axis2_transport_in_desc *transport_in,
00114                     const axis2_env_t *env,
00115                     const axis2_qname_t *qname);
00116 
00125         struct axis2_flow *(AXIS2_CALL *
00126                 get_in_flow)(
00127                     const axis2_transport_in_desc_t *transport_in,
00128                     const axis2_env_t *env);
00129 
00139         axis2_status_t (AXIS2_CALL *
00140                 set_in_flow)(
00141                     struct axis2_transport_in_desc *transport_in,
00142                     const axis2_env_t *env,
00143                     struct axis2_flow *in_flow);
00144 
00153         struct axis2_flow *(AXIS2_CALL *
00154                 get_fault_in_flow)(
00155                     const axis2_transport_in_desc_t *transport_in,
00156                     const axis2_env_t *env);
00157 
00167         axis2_status_t (AXIS2_CALL *
00168                 set_fault_in_flow)(
00169                     struct axis2_transport_in_desc *transport_in,
00170                     const axis2_env_t *env,
00171                     struct axis2_flow *fault_in_flow);
00172 
00180         struct axis2_transport_receiver *(AXIS2_CALL *
00181                 get_recv)(
00182                     const axis2_transport_in_desc_t *transport_in,
00183                     const axis2_env_t *env);
00184 
00193         axis2_status_t (AXIS2_CALL *
00194                 set_recv)(
00195                     struct axis2_transport_in_desc *transport_in,
00196                     const axis2_env_t *env,
00197                     struct axis2_transport_receiver *recv);
00198 
00205         struct axis2_phase *(AXIS2_CALL *
00206                 get_in_phase)(
00207                     const axis2_transport_in_desc_t *transport_in,
00208                     const axis2_env_t *env);
00209 
00218         axis2_status_t (AXIS2_CALL *
00219                 set_in_phase)(
00220                     struct axis2_transport_in_desc *transport_in,
00221                     const axis2_env_t *env,
00222                     struct axis2_phase *in_phase);
00223 
00230         struct axis2_phase *(AXIS2_CALL *
00231                 get_fault_phase)(
00232                     const axis2_transport_in_desc_t *transport_in,
00233                     const axis2_env_t *env);
00234 
00242         axis2_status_t (AXIS2_CALL *
00243                 set_fault_phase)(
00244                     struct axis2_transport_in_desc *transport_in,
00245                     const axis2_env_t *env,
00246                     struct axis2_phase *fault_phase);
00247 
00256         axis2_status_t (AXIS2_CALL *
00257                 add_param)(
00258                     axis2_transport_in_desc_t *transport_in_desc,
00259                     const axis2_env_t *env,
00260                     axis2_param_t *param);
00261 
00270         axis2_param_t *(AXIS2_CALL *
00271                 get_param)(
00272                     const axis2_transport_in_desc_t *transport_in_desc,
00273                     const axis2_env_t *env,
00274                     const axis2_char_t *param_name);
00275 
00283         axis2_bool_t (AXIS2_CALL *
00284                 is_param_locked)(
00285                     axis2_transport_in_desc_t *transport_in_desc,
00286                     const axis2_env_t *env,
00287                     const axis2_char_t *param_name);
00288     };
00289 
00293     struct axis2_transport_in_desc
00294     {
00296         axis2_transport_in_desc_ops_t *ops;
00298         axis2_param_container_t *param_container;
00299     };
00300 
00307     AXIS2_EXTERN axis2_transport_in_desc_t *AXIS2_CALL
00308     axis2_transport_in_desc_create_with_qname (
00309             const axis2_env_t *env,
00310             const axis2_qname_t *qname);
00311 
00319      axis2_status_t AXIS2_CALL
00320      axis2_transport_in_desc_free_void_arg(
00321             void *transport_in,
00322             const axis2_env_t *env);
00323 
00326 #define AXIS2_TRANSPORT_IN_DESC_FREE(transport_in_desc, env) \
00327       ((transport_in_desc)->ops->free (transport_in_desc, env))
00328 
00331 #define AXIS2_TRANSPORT_IN_DESC_GET_QNAME(transport_in_desc, env) \
00332       ((transport_in_desc)->ops->get_qname (transport_in_desc, env))
00333 
00336 #define AXIS2_TRANSPORT_IN_DESC_SET_QNAME(transport_in_desc, env, qname) \
00337       ((transport_in_desc)->ops->set_qname (transport_in_desc, env, qname))
00338 
00341 #define AXIS2_TRANSPORT_IN_DESC_GET_IN_FLOW(transport_in_desc, env) \
00342       ((transport_in_desc)->ops->get_in_flow (transport_in_desc, env))
00343 
00346 #define AXIS2_TRANSPORT_IN_DESC_SET_IN_FLOW(transport_in_desc, env, in_flow) \
00347       ((transport_in_desc)->ops->set_in_flow (transport_in_desc, env, in_flow))
00348 
00351 #define AXIS2_TRANSPORT_IN_DESC_GET_FAULT_IN_FLOW(transport_in_desc, env) \
00352       ((transport_in_desc)->ops->get_fault_in_flow (transport_in_desc, env))
00353 
00356 #define AXIS2_TRANSPORT_IN_DESC_SET_FAULT_IN_FLOW(transport_in_desc, env, fault_in_flow) \
00357       ((transport_in_desc)->ops->set_fault_in_flow (transport_in_desc, env, fault_in_flow))
00358 
00361 #define AXIS2_TRANSPORT_IN_DESC_GET_RECV(transport_in_desc, env) \
00362       ((transport_in_desc)->ops->get_recv (transport_in_desc, env))
00363 
00366 #define AXIS2_TRANSPORT_IN_DESC_SET_RECV(transport_in_desc, env, recv) \
00367       ((transport_in_desc)->ops->set_recv (transport_in_desc, env, recv))
00368 
00371 #define AXIS2_TRANSPORT_IN_DESC_GET_IN_PHASE(transport_in_desc, env) \
00372       ((transport_in_desc)->ops->get_in_phase (transport_in_desc, env))
00373 
00376 #define AXIS2_TRANSPORT_IN_DESC_SET_IN_PHASE(transport_in_desc, env, in_phase) \
00377       ((transport_in_desc)->ops->set_in_phase (transport_in_desc, env, in_phase))
00378 
00381 #define AXIS2_TRANSPORT_IN_DESC_GET_FAULT_PHASE(transport_in_desc, env) \
00382       ((transport_in_desc)->ops->get_fault_phase (transport_in_desc, env))
00383 
00386 #define AXIS2_TRANSPORT_IN_DESC_SET_FAULT_PHASE(transport_in_desc, env, fault_phase) \
00387       ((transport_in_desc)->ops->set_fault_phase (transport_in_desc, env, fault_phase))
00388 
00391 #define AXIS2_TRANSPORT_IN_DESC_ADD_PARAM(transport_in_desc, env, param) \
00392       ((transport_in_desc)->ops->add_param (transport_in_desc, env, param))
00393 
00396 #define AXIS2_TRANSPORT_IN_DESC_GET_PARAM(transport_in_desc, env, param_name) \
00397       ((transport_in_desc)->ops->get_param (transport_in_desc, env, param_name))
00398 
00401 #define AXIS2_TRANSPORT_IN_DESC_IS_PARAM_LOCKED(transport_in_desc, env, param_name) \
00402       ((transport_in_desc)->ops->is_param_locked (transport_in_desc, env, param_name))
00403 
00406 #ifdef __cplusplus
00407 }
00408 #endif
00409 #endif  /* AXIS2_TRANSPORT_IN_DESC_H */

Generated on Wed Dec 20 20:34:50 2006 for Axis2/C by  doxygen 1.5.1