![]() |
![]() |
![]() |
Camel Reference Manual | ![]() |
---|---|---|---|---|
CamelURL; #define CAMEL_URL_HIDE_PASSWORD #define CAMEL_URL_HIDE_PARAMS #define CAMEL_URL_HIDE_AUTH #define CAMEL_URL_HIDE_ALL CamelURL* camel_url_new_with_base (CamelURL *base, const char *url_string); CamelURL* camel_url_new (const char *url_string, CamelException *ex); char* camel_url_to_string (CamelURL *url, guint32 flags); void camel_url_free (CamelURL *url); char* camel_url_encode (const char *part, const char *escape_extra); void camel_url_decode (char *part); char* camel_url_decode_path (const char *path); void camel_url_set_protocol (CamelURL *url, const char *protocol); void camel_url_set_user (CamelURL *url, const char *user); void camel_url_set_authmech (CamelURL *url, const char *authmech); void camel_url_set_passwd (CamelURL *url, const char *passwd); void camel_url_set_host (CamelURL *url, const char *host); void camel_url_set_port (CamelURL *url, int port); void camel_url_set_path (CamelURL *url, const char *path); void camel_url_set_param (CamelURL *url, const char *name, const char *value); void camel_url_set_query (CamelURL *url, const char *query); void camel_url_set_fragment (CamelURL *url, const char *fragment); const char* camel_url_get_param (CamelURL *url, const char *name); guint camel_url_hash (const void *v); int camel_url_equal (const void *v, const void *v2); CamelURL* camel_url_copy (const CamelURL *in);
typedef struct { char *protocol; char *user; char *authmech; char *passwd; char *host; int port; char *path; GData *params; char *query; char *fragment; } CamelURL;
#define CAMEL_URL_HIDE_ALL (CAMEL_URL_HIDE_PASSWORD | CAMEL_URL_HIDE_PARAMS | CAMEL_URL_HIDE_AUTH)
CamelURL* camel_url_new_with_base (CamelURL *base, const char *url_string);
Parses url_string
relative to base
.
base : |
a base URL |
url_string : |
the URL |
Returns : | a parsed CamelURL |
CamelURL* camel_url_new (const char *url_string, CamelException *ex);
Parses an absolute URL.
url_string : |
a URL string |
ex : |
a CamelException |
Returns : | a CamelURL if it can be parsed, or NULL otherwise
|
char* camel_url_to_string (CamelURL *url, guint32 flags);
Flatten a CamelURL into a string.
url : |
a CamelURL |
flags : |
additional translation options |
Returns : | a string representing url , which the caller must free
|
char* camel_url_encode (const char *part, const char *escape_extra);
This -encodes
the given URL part and returns the escaped version
in allocated memory, which the caller must free when it is done.
part : |
a URL part |
escape_extra : |
additional characters beyond " \"%#<>{}|\^[]`"
to escape (or NULL )
|
Returns : | the encoded string |
void camel_url_decode (char *part);
-decodes
the passed-in URL *in place*. The decoded version is
never longer than the encoded version, so there does not need to
be any additional space at the end of the string.
part : |
a URL part |
void camel_url_set_protocol (CamelURL *url, const char *protocol);
Set the protocol of a CamelURL.
url : |
a CamelURL |
protocol : |
protocol schema |
void camel_url_set_user (CamelURL *url, const char *user);
Set the user of a CamelURL.
url : |
a CamelURL |
user : |
username |
void camel_url_set_authmech (CamelURL *url, const char *authmech);
Set the authmech of a CamelURL.
url : |
a CamelURL |
authmech : |
authentication mechanism |
void camel_url_set_passwd (CamelURL *url, const char *passwd);
Set the password of a CamelURL.
url : |
a CamelURL |
passwd : |
password |
void camel_url_set_host (CamelURL *url, const char *host);
Set the hostname of a CamelURL.
url : |
a CamelURL |
host : |
hostname |
void camel_url_set_port (CamelURL *url, int port);
Set the port on a CamelURL.
url : |
a CamelURL |
port : |
port |
void camel_url_set_path (CamelURL *url, const char *path);
Set the path component of a CamelURL.
url : |
a CamelURL |
path : |
path |
void camel_url_set_param (CamelURL *url, const char *name, const char *value);
Set a param on the CamelURL.
url : |
a CamelURL |
name : |
name of the param to set |
value : |
value of the param to set |
void camel_url_set_query (CamelURL *url, const char *query);
Set the query of a CamelURL.
url : |
a CamelURL |
query : |
url query |
void camel_url_set_fragment (CamelURL *url, const char *fragment);
Set the fragment of a CamelURL.
url : |
a CamelURL |
fragment : |
url fragment |
const char* camel_url_get_param (CamelURL *url, const char *name);
Get the value of the specified param on the URL.