axis2_svc_client.h

Go to the documentation of this file.
00001 
00002 /*
00003 * Licensed to the Apache Software Foundation (ASF) under one or more
00004 * contributor license agreements.  See the NOTICE file distributed with
00005 * this work for additional information regarding copyright ownership.
00006 * The ASF licenses this file to You under the Apache License, Version 2.0
00007 * (the "License"); you may not use this file except in compliance with
00008 * the License.  You may obtain a copy of the License at
00009 *
00010 *      http://www.apache.org/licenses/LICENSE-2.0
00011 *
00012 * Unless required by applicable law or agreed to in writing, software
00013 * distributed under the License is distributed on an "AS IS" BASIS,
00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015 * See the License for the specific language governing permissions and
00016 * limitations under the License.
00017 */
00018 
00019 #ifndef AXIS2_SVC_CLIENT_H
00020 #define AXIS2_SVC_CLIENT_H
00021 
00043 #include <axis2_defines.h>
00044 #include <axutil_env.h>
00045 #include <axutil_uri.h>
00046 #include <axis2_svc.h>
00047 #include <axis2_options.h>
00048 #include <axutil_qname.h>
00049 #include <axiom_element.h>
00050 #include <axis2_callback.h>
00051 #include <axis2_endpoint_ref.h>
00052 #include <axis2_svc_ctx.h>
00053 #include <axis2_conf_ctx.h>
00054 #include <axis2_op_client.h>
00055 #include <axutil_string.h>
00056 #include <neethi_policy.h>
00057 
00058 #ifdef __cplusplus
00059 extern "C"
00060 {
00061 #endif
00062 
00064     typedef struct axis2_svc_client axis2_svc_client_t;
00065 
00074     AXIS2_EXTERN axis2_svc_t *AXIS2_CALL
00075     axis2_svc_client_get_svc(
00076         const axis2_svc_client_t * svc_client,
00077         const axutil_env_t * env);
00078 
00087     AXIS2_EXTERN axis2_conf_ctx_t *AXIS2_CALL
00088     axis2_svc_client_get_conf_ctx(
00089         const axis2_svc_client_t * svc_client,
00090         const axutil_env_t * env);
00091 
00099     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00100     axis2_svc_client_set_options(
00101         axis2_svc_client_t * svc_client,
00102         const axutil_env_t * env,
00103         const axis2_options_t * options);
00104 
00112     AXIS2_EXTERN const axis2_options_t *AXIS2_CALL
00113     axis2_svc_client_get_options(
00114         const axis2_svc_client_t * svc_client,
00115         const axutil_env_t * env);
00116 
00126     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00127     axis2_svc_client_set_override_options(
00128         axis2_svc_client_t * svc_client,
00129         const axutil_env_t * env,
00130         const axis2_options_t * override_options);
00131 
00139     AXIS2_EXTERN const axis2_options_t *AXIS2_CALL
00140     axis2_svc_client_get_override_options(
00141         const axis2_svc_client_t * svc_client,
00142         const axutil_env_t * env);
00143 
00155     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00156     axis2_svc_client_engage_module(
00157         axis2_svc_client_t * svc_client,
00158         const axutil_env_t * env,
00159         const axis2_char_t * module_name);
00160 
00170     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00171     axis2_svc_client_disengage_module(
00172         axis2_svc_client_t * svc_client,
00173         const axutil_env_t * env,
00174         const axis2_char_t * module_name);
00175 
00186     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00187     axis2_svc_client_add_header(
00188         axis2_svc_client_t * svc_client,
00189         const axutil_env_t * env,
00190         axiom_node_t * header);
00191 
00198     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00199     axis2_svc_client_remove_all_headers(
00200         axis2_svc_client_t * svc_client,
00201         const axutil_env_t * env);
00202 
00216     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00217     axis2_svc_client_send_robust_with_op_qname(
00218         axis2_svc_client_t * svc_client,
00219         const axutil_env_t * env,
00220         const axutil_qname_t * op_qname,
00221         const axiom_node_t * payload);
00222 
00236     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00237     axis2_svc_client_send_robust(
00238         axis2_svc_client_t * svc_client,
00239         const axutil_env_t * env,
00240         const axiom_node_t * payload);
00241 
00254     AXIS2_EXTERN void AXIS2_CALL
00255     axis2_svc_client_fire_and_forget_with_op_qname(
00256         axis2_svc_client_t * svc_client,
00257         const axutil_env_t * env,
00258         const axutil_qname_t * op_qname,
00259         const axiom_node_t * payload);
00260 
00271     AXIS2_EXTERN void AXIS2_CALL
00272     axis2_svc_client_fire_and_forget(
00273         axis2_svc_client_t * svc_client,
00274         const axutil_env_t * env,
00275         const axiom_node_t * payload);
00276 
00289     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00290     axis2_svc_client_send_receive_with_op_qname(
00291         axis2_svc_client_t * svc_client,
00292         const axutil_env_t * env,
00293         const axutil_qname_t * op_qname,
00294         const axiom_node_t * payload);
00295 
00306     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00307     axis2_svc_client_send_receive(
00308         axis2_svc_client_t * svc_client,
00309         const axutil_env_t * env,
00310         const axiom_node_t * payload);
00311 
00324     AXIS2_EXTERN void AXIS2_CALL
00325     axis2_svc_client_send_receive_non_blocking_with_op_qname(
00326         axis2_svc_client_t * svc_client,
00327         const axutil_env_t * env,
00328         const axutil_qname_t * op_qname,
00329         const axiom_node_t * payload,
00330         axis2_callback_t * callback);
00331 
00342     AXIS2_EXTERN void AXIS2_CALL
00343     axis2_svc_client_send_receive_non_blocking(
00344         axis2_svc_client_t * svc_client,
00345         const axutil_env_t * env,
00346         const axiom_node_t * payload,
00347         axis2_callback_t * callback);
00348 
00358     AXIS2_EXTERN axis2_op_client_t *AXIS2_CALL
00359     axis2_svc_client_create_op_client(
00360         axis2_svc_client_t * svc_client,
00361         const axutil_env_t * env,
00362         const axutil_qname_t * op_qname);
00363 
00372     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00373     axis2_svc_client_finalize_invoke(
00374         axis2_svc_client_t * svc_client,
00375         const axutil_env_t * env);
00376 
00386     AXIS2_EXTERN const axis2_endpoint_ref_t *AXIS2_CALL
00387     axis2_svc_client_get_own_endpoint_ref(
00388         const axis2_svc_client_t * svc_client,
00389         const axutil_env_t * env,
00390         const axis2_char_t * transport);
00391 
00399     AXIS2_EXTERN const axis2_endpoint_ref_t *AXIS2_CALL
00400     axis2_svc_client_get_target_endpoint_ref(
00401         const axis2_svc_client_t * svc_client,
00402         const axutil_env_t * env);
00403 
00412     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00413     axis2_svc_client_set_target_endpoint_ref(
00414         axis2_svc_client_t * svc_client,
00415         const axutil_env_t * env,
00416         axis2_endpoint_ref_t * target_epr);
00417 
00430     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00431     axis2_svc_client_set_proxy_with_auth(
00432         axis2_svc_client_t * svc_client,
00433         const axutil_env_t * env,
00434         axis2_char_t * proxy_host,
00435         axis2_char_t * proxy_port,
00436         axis2_char_t * username,
00437         axis2_char_t * password);
00438 
00447     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00448     axis2_svc_client_set_proxy(
00449         axis2_svc_client_t * svc_client,
00450         const axutil_env_t * env,
00451         axis2_char_t * proxy_host,
00452         axis2_char_t * proxy_port);
00453 
00461     AXIS2_EXTERN axis2_svc_ctx_t *AXIS2_CALL
00462     axis2_svc_client_get_svc_ctx(
00463         const axis2_svc_client_t * svc_client,
00464         const axutil_env_t * env);
00465 
00472     AXIS2_EXTERN void AXIS2_CALL
00473     axis2_svc_client_free(
00474         axis2_svc_client_t * svc_client,
00475         const axutil_env_t * env);
00476 
00484     AXIS2_EXTERN axis2_op_client_t *AXIS2_CALL
00485     axis2_svc_client_get_op_client(
00486         const axis2_svc_client_t * svc_client,
00487         const axutil_env_t * env);
00488 
00496     AXIS2_EXTERN axis2_svc_client_t *AXIS2_CALL
00497     axis2_svc_client_create(
00498         const axutil_env_t * env,
00499         const axis2_char_t * client_home);
00500 
00513     AXIS2_EXTERN axis2_svc_client_t *AXIS2_CALL
00514     axis2_svc_client_create_with_conf_ctx_and_svc(
00515         const axutil_env_t * env,
00516         const axis2_char_t * client_home,
00517         axis2_conf_ctx_t * conf_ctx,
00518         axis2_svc_t * svc);
00519 
00527     AXIS2_EXTERN axiom_soap_envelope_t *AXIS2_CALL
00528     axis2_svc_client_get_last_response_soap_envelope(
00529         const axis2_svc_client_t * svc_client,
00530         const axutil_env_t * env);
00531 
00538     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00539     axis2_svc_client_get_last_response_has_fault(
00540         const axis2_svc_client_t * svc_client,
00541         const axutil_env_t * env);
00542 
00549     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00550     axis2_svc_client_get_auth_type(
00551         const axis2_svc_client_t * svc_client,
00552         const axutil_env_t * env);
00553 
00561     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00562     axis2_svc_client_get_http_auth_required(
00563         const axis2_svc_client_t * svc_client,
00564         const axutil_env_t * env);
00565 
00573     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00574     axis2_svc_client_get_proxy_auth_required(
00575         const axis2_svc_client_t * svc_client,
00576         const axutil_env_t * env);
00577 
00585     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00586     axis2_svc_client_set_policy_from_om(
00587         axis2_svc_client_t * svc_client,
00588         const axutil_env_t * env,
00589         axiom_node_t * root_node);
00590 
00598     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00599     axis2_svc_client_set_policy(
00600         axis2_svc_client_t * svc_client,
00601         const axutil_env_t * env,
00602         neethi_policy_t * policy);
00603 
00610     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00611     axis2_svc_client_get_http_headers(
00612         axis2_svc_client_t * svc_client,
00613         const axutil_env_t * env);
00614 
00621     AXIS2_EXTERN int AXIS2_CALL
00622     axis2_svc_client_get_http_status_code(
00623         axis2_svc_client_t * svc_client,
00624         const axutil_env_t * env);
00625 
00627 #ifdef __cplusplus
00628 }
00629 #endif
00630 
00631 #endif                          /* AXIS2_SVC_CLIENT_H */

Generated on Fri Apr 17 11:49:42 2009 for Axis2/C by  doxygen 1.5.3