00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef TCPMON_ENTRY_H
00018 #define TCPMON_ENTRY_H
00019
00020 #include <axis2_env.h>
00021 #include <axis2_string.h>
00022
00028 #ifdef __cplusplus
00029 extern "C"
00030 {
00031 #endif
00032
00039 typedef struct tcpmon_entry_ops tcpmon_entry_ops_t;
00040 typedef struct tcpmon_entry tcpmon_entry_t;
00041
00042 struct tcpmon_entry_ops
00043 {
00050 axis2_status_t (AXIS2_CALL *
00051 free)(tcpmon_entry_t *entry,
00052 const axis2_env_t *env);
00053
00059 axis2_char_t* (AXIS2_CALL *
00060 arrived_time) (tcpmon_entry_t *entry,
00061 const axis2_env_t *env);
00062
00068 axis2_char_t* (AXIS2_CALL *
00069 sent_time) (tcpmon_entry_t *entry,
00070 const axis2_env_t *env);
00071
00077 axis2_char_t* (AXIS2_CALL *
00078 time_diff) (tcpmon_entry_t *entry,
00079 const axis2_env_t *env);
00080
00086 axis2_char_t* (AXIS2_CALL *
00087 sent_data) (tcpmon_entry_t *entry,
00088 const axis2_env_t *env);
00089
00095 axis2_char_t* (AXIS2_CALL *
00096 arrived_data) (tcpmon_entry_t *entry,
00097 const axis2_env_t *env);
00098
00104 axis2_char_t* (AXIS2_CALL *
00105 sent_headers) (tcpmon_entry_t *entry,
00106 const axis2_env_t *env);
00107
00113 axis2_char_t* (AXIS2_CALL *
00114 arrived_headers) (tcpmon_entry_t *entry,
00115 const axis2_env_t *env);
00116
00122 axis2_bool_t (AXIS2_CALL *
00123 is_success) (tcpmon_entry_t *entry,
00124 const axis2_env_t *env);
00125
00126 };
00127
00128 struct tcpmon_entry
00129 {
00130 tcpmon_entry_ops_t *ops;
00131 };
00132
00138 AXIS2_EXTERN tcpmon_entry_t * AXIS2_CALL
00139 tcpmon_entry_create(const axis2_env_t *env );
00140
00141
00142
00143 #define TCPMON_ENTRY_FREE(entry, env) \
00144 ((entry)->ops->free (entry, env))
00145
00146 #define TCPMON_ENTRY_ARRIVED_TIME(entry, env) \
00147 ((entry)->ops->arrived_time(entry, env))
00148
00149 #define TCPMON_ENTRY_SENT_TIME(entry, env) \
00150 ((entry)->ops->sent_time(entry, env))
00151
00152 #define TCPMON_ENTRY_TIME_DIFF(entry, env) \
00153 ((entry)->ops->time_diff(entry, env))
00154
00155 #define TCPMON_ENTRY_SENT_DATA(entry, env) \
00156 ((entry)->ops->sent_data(entry, env))
00157
00158 #define TCPMON_ENTRY_ARRIVED_DATA(entry, env) \
00159 ((entry)->ops->arrived_data(entry, env))
00160
00161 #define TCPMON_ENTRY_SENT_HEADERS(entry, env) \
00162 ((entry)->ops->sent_headers(entry, env))
00163
00164 #define TCPMON_ENTRY_ARRIVED_HEADERS(entry, env) \
00165 ((entry)->ops->arrived_headers(entry, env))
00166
00167 #define TCPMON_ENTRY_IS_SUCCESS(entry, env) \
00168 ((entry)->ops->is_success(entry, env))
00169
00172 #ifdef __cplusplus
00173 }
00174 #endif
00175
00176 #endif