00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXUTIL_URL_H
00019 #define AXUTIL_URL_H
00020
00021
00027 #include <axutil_utils.h>
00028 #include <axutil_utils_defines.h>
00029 #include <axutil_env.h>
00030 #include <axutil_uri.h>
00031
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036
00042 typedef struct axutil_url axutil_url_t;
00043
00044 AXIS2_EXTERN axutil_url_t * AXIS2_CALL
00045 axutil_url_create(
00046 const axutil_env_t *env,
00047 const axis2_char_t *protocol,
00048 const axis2_char_t *server,
00049 const int port,
00050 const axis2_char_t *path);
00051
00052 AXIS2_EXTERN axutil_url_t * AXIS2_CALL
00053 axutil_url_parse_string(
00054 const axutil_env_t *env,
00055 const axis2_char_t *str_url);
00056
00057 AXIS2_EXTERN axutil_uri_t *AXIS2_CALL
00058 axutil_url_to_uri(
00059 axutil_url_t *url,
00060 const axutil_env_t *env);
00061
00062 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00063 axutil_url_to_external_form(axutil_url_t *url,
00064 const axutil_env_t *env);
00065
00066 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00067 axutil_url_set_protocol(axutil_url_t *url,
00068 const axutil_env_t *env,
00069 axis2_char_t *protocol);
00070
00071 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00072 axutil_url_get_protocol(axutil_url_t *url,
00073 const axutil_env_t *env);
00074
00075 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00076 axutil_url_set_server(axutil_url_t *url,
00077 const axutil_env_t *env,
00078 axis2_char_t *server);
00079
00080 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00081 axutil_url_get_server(axutil_url_t *url,
00082 const axutil_env_t *env);
00083
00084 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00085 axutil_url_set_port(axutil_url_t *url,
00086 const axutil_env_t *env,
00087 int port);
00088
00089 AXIS2_EXTERN int AXIS2_CALL
00090 axutil_url_get_port(axutil_url_t *url,
00091 const axutil_env_t *env);
00092
00093 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00094 axutil_url_set_path(axutil_url_t *url,
00095 const axutil_env_t *env,
00096 axis2_char_t *path);
00097
00098 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00099 axutil_url_get_path(axutil_url_t *url,
00100 const axutil_env_t *env);
00101
00102 AXIS2_EXTERN axutil_url_t* AXIS2_CALL
00103 axutil_url_clone(axutil_url_t *url,
00104 const axutil_env_t *env);
00105
00106 AXIS2_EXTERN void AXIS2_CALL
00107 axutil_url_free(axutil_url_t *url,
00108 const axutil_env_t *env);
00109
00111 #ifdef __cplusplus
00112 }
00113 #endif
00114
00115 #endif
00116