00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXUTIL_URL_H
00020 #define AXUTIL_URL_H
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(
00064 axutil_url_t * url,
00065 const axutil_env_t * env);
00066
00067 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00068 axutil_url_set_protocol(
00069 axutil_url_t * url,
00070 const axutil_env_t * env,
00071 axis2_char_t * protocol);
00072
00073 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00074 axutil_url_get_protocol(
00075 axutil_url_t * url,
00076 const axutil_env_t * env);
00077
00078 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00079 axutil_url_set_server(
00080 axutil_url_t * url,
00081 const axutil_env_t * env,
00082 axis2_char_t * server);
00083
00084 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00085 axutil_url_get_server(
00086 axutil_url_t * url,
00087 const axutil_env_t * env);
00088
00089 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00090 axutil_url_set_port(
00091 axutil_url_t * url,
00092 const axutil_env_t * env,
00093 int port);
00094
00095 AXIS2_EXTERN int AXIS2_CALL
00096 axutil_url_get_port(
00097 axutil_url_t * url,
00098 const axutil_env_t * env);
00099
00100 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00101 axutil_url_set_path(
00102 axutil_url_t * url,
00103 const axutil_env_t * env,
00104 axis2_char_t * path);
00105
00106 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00107 axutil_url_get_path(
00108 axutil_url_t * url,
00109 const axutil_env_t * env);
00110
00111 AXIS2_EXTERN axutil_url_t *AXIS2_CALL
00112 axutil_url_clone(
00113 axutil_url_t * url,
00114 const axutil_env_t * env);
00115
00116 AXIS2_EXTERN void AXIS2_CALL
00117 axutil_url_free(
00118 axutil_url_t * url,
00119 const axutil_env_t * env);
00120
00122 #ifdef __cplusplus
00123 }
00124 #endif
00125
00126 #endif