# sandesha2_ack_mgr.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_ACK_MGR_H
    00018 #define SANDESHA2_ACK_MGR_H
    00019
    00024 #include <axutil_utils_defines.h>
    00025 #include <axutil_env.h>
    00026 #include <sandesha2_storage_mgr.h>
    00027 #include <sandesha2_msg_ctx.h>
    00028
    00029 #ifdef __cplusplus
    00030 extern "C"
    00031 {
    00032 #endif
    00033
    00034 struct sandesha2_seq_property_mgr;
    00035 struct sandesha2_sender_mgr;
    00041 AXIS2_EXTERN sandesha2_msg_ctx_t *AXIS2_CALL
    00042 sandesha2_ack_mgr_generate_ack_msg(
    00043     const axutil_env_t *env,
    00044     sandesha2_msg_ctx_t *ref_rm_msg,
    00045     axis2_char_t *seq_id,
    00046     struct sandesha2_seq_property_mgr *seq_prop_mgr);
    00047
    00056 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00057 sandesha2_ack_mgr_get_client_completed_msgs_list(
    00058     const axutil_env_t *env,
    00059     axis2_char_t *seq_id,
    00060     struct sandesha2_seq_property_mgr *seq_prop_mgr);
    00061
    00062 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00063 sandesha2_ack_mgr_get_svr_completed_msgs_list(
    00064     const axutil_env_t *env,
    00065     axis2_char_t *seq_id,
    00066     struct sandesha2_seq_property_mgr *seq_prop_mgr);
    00067
    00068 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00069 sandesha2_ack_mgr_verify_seq_completion(
    00070     const axutil_env_t *env,
    00071     axutil_array_list_t *ack_ranges,
    00072     long last_msg_no);
    00073
    00074 AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00075 sandesha2_ack_mgr_piggyback_acks_if_present(
    00076     const axutil_env_t *env,
    00077     axis2_char_t *seq_id,
    00078     sandesha2_msg_ctx_t *rm_msg_ctx,
    00079     sandesha2_storage_mgr_t *storage_mgr,
    00080     struct sandesha2_seq_property_mgr *seq_prop_mgr,
    00081     struct sandesha2_sender_mgr *sender_mgr);
    00082
    00084 #ifdef __cplusplus
    00085 }
    00086 #endif
    00087
    00088 #endif                          /* SANDESHA2_ACK_MGR_H */
    00089