# 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 */