sandesha2_client.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 SANDESHA2_CLIENT_H
00018 #define SANDESHA2_CLIENT_H
00019 
00025 #include <axutil_allocator.h>
00026 #include <axutil_env.h>
00027 #include <axutil_error.h>
00028 #include <axutil_string.h>
00029 #include <axutil_utils.h>
00030 #include <axutil_hash.h>
00031 #include <axutil_uri.h>
00032 #include <axutil_array_list.h>
00033 #include <axis2_svc_client.h>
00034 #include <axis2_callback.h>
00035 #include <axis2_listener_manager.h>
00036 
00037 #include <sandesha2_seq_report.h>
00038 #include <sandesha2_report.h>
00039 
00040 #ifdef __cplusplus
00041 extern "C"
00042 {
00043 #endif
00044 
00049 AXIS2_EXTERN sandesha2_seq_report_t *AXIS2_CALL
00050 sandesha2_client_get_outgoing_seq_report_with_svc_client(
00051     const axutil_env_t *env,
00052     axis2_svc_client_t *svc_client);
00053 
00054 AXIS2_EXTERN sandesha2_seq_report_t *AXIS2_CALL
00055 sandesha2_client_get_outgoing_seq_report_with_seq_key(
00056     const axutil_env_t *env,
00057     axis2_char_t *to,
00058     axis2_char_t *seq_key,
00059     axis2_conf_ctx_t *conf_ctx);
00060 
00061 AXIS2_EXTERN sandesha2_seq_report_t *AXIS2_CALL
00062 sandesha2_client_get_outgoing_seq_report_with_internal_seq_id(
00063     const axutil_env_t *env,
00064     axis2_char_t *internal_seq_id,
00065     axis2_conf_ctx_t *conf_ctx);
00066 
00075 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00076 sandesha2_client_get_incoming_seq_reports(
00077     axutil_env_t *env,
00078     axis2_conf_ctx_t *conf_ctx);
00079 
00088 AXIS2_EXTERN sandesha2_report_t *AXIS2_CALL
00089 sandesha2_client_get_report(
00090     const axutil_env_t *env,
00091     axis2_conf_ctx_t *conf_ctx);
00092 
00093 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00094 sandesha2_client_create_seq_with_svc_client(
00095     const axutil_env_t *env,
00096     axis2_svc_client_t *svc_client,
00097     axis2_bool_t offer);
00098 
00099 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00100 sandesha2_client_create_seq_with_svc_client_and_seq_key(
00101     const axutil_env_t *env,
00102     axis2_svc_client_t *svc_client,
00103     axis2_bool_t offer,
00104     axis2_char_t *seq_key);
00105 
00111 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00112 sandesha2_client_terminate_seq_with_svc_client(
00113     const axutil_env_t *env,
00114     axis2_svc_client_t *svc_client,
00115     axis2_callback_t *callback);
00116 
00117 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00118 sandesha2_client_terminate_seq_with_svc_client_and_seq_key(
00119     const axutil_env_t *env,
00120     axis2_svc_client_t *svc_client,
00121     axis2_callback_t *callback,
00122     axis2_char_t *seq_key);
00123 
00129 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00130 sandesha2_client_close_seq_with_svc_client(
00131     const axutil_env_t *env,
00132     axis2_svc_client_t *svc_client,
00133     axis2_callback_t *callback);
00134 
00135 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00136 sandesha2_client_close_seq_with_svc_client_and_seq_key(
00137     const axutil_env_t *env,
00138     axis2_svc_client_t *svc_client,
00139     axis2_callback_t *callback,
00140     axis2_char_t *seq_key);
00141 
00147 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00148 sandesha2_client_wait_until_seq_completed_with_svc_client(
00149     const axutil_env_t *env,
00150     axis2_svc_client_t *svc_client);
00151 
00152 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00153 sandesha2_client_wait_until_seq_completed_with_svc_client_and_seq_key(
00154     const axutil_env_t *env,
00155     axis2_svc_client_t *svc_client,
00156     axis2_char_t *seq_key);
00157 
00165 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00166 sandesha2_client_wait_until_seq_completed_with_svc_client_and_max_waiting_time(
00167     const axutil_env_t *env,
00168     axis2_svc_client_t *svc_client,
00169     long max_waiting_time);
00170 
00171 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00172 sandesha2_client_wait_until_seq_completed_with_svc_client_and_max_waiting_time_and_seq_key(
00173     const axutil_env_t *env,
00174     axis2_svc_client_t *svc_client,
00175     long max_waiting_time,
00176     axis2_char_t *seq_key);
00177 
00178 /* 
00179  * gives the out seqID if CS/CSR exchange is done. Otherwise an error
00180  */
00181 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00182 sandesha2_client_get_seq_id(
00183     const axutil_env_t *env,
00184     axis2_svc_client_t *svc_client);
00185 
00186 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00187 sandesha2_client_send_ack_request_with_svc_client(
00188     const axutil_env_t *env,
00189     axis2_svc_client_t *svc_client);
00190 
00191 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00192 sandesha2_client_send_ack_request_with_svc_client_and_seq_key(
00193     const axutil_env_t *env,
00194     axis2_svc_client_t *svc_client,
00195     axis2_char_t *seq_key);
00196 
00197 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00198 sandesha2_client_send_non_blocking(
00199     const axutil_env_t *env,
00200     axis2_svc_client_t *svc_client,
00201     axis2_options_t *options,
00202     axutil_qname_t *op_qname,
00203     axis2_callback_t *callback,
00204     axiom_node_t *payload,
00205     axis2_listener_manager_t *listener_manager);
00206 
00207 
00217 axiom_node_t *AXIS2_CALL
00218 sandesha2_client_get_response_envelope(
00219     const axutil_env_t *env,
00220     axis2_conf_ctx_t *conf_ctx,
00221     axis2_svc_client_t *svc_client,
00222     int msg_no);
00223 
00224 #ifdef __cplusplus
00225 }
00226 #endif
00227 #endif /* SANDESHA2_CLIENT_H */

Generated on Wed Oct 14 01:02:17 2009 for Sandesha2/C by  doxygen 1.5.7.1