| Camel Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
#include <camel/camel.h> struct CamelIMAPXListResponse; CamelIMAPXListResponse * camel_imapx_list_response_new (CamelIMAPXStream *stream,GCancellable *cancellable,GError **error); guint camel_imapx_list_response_hash (CamelIMAPXListResponse *response); gboolean camel_imapx_list_response_equal (CamelIMAPXListResponse *response_a,CamelIMAPXListResponse *response_b); gint camel_imapx_list_response_compare (CamelIMAPXListResponse *response_a,CamelIMAPXListResponse *response_b); const gchar * camel_imapx_list_response_get_mailbox_name (CamelIMAPXListResponse *response); gchar camel_imapx_list_response_get_separator (CamelIMAPXListResponse *response); #define CAMEL_IMAPX_LIST_ATTR_NOINFERIORS #define CAMEL_IMAPX_LIST_ATTR_NOSELECT #define CAMEL_IMAPX_LIST_ATTR_MARKED #define CAMEL_IMAPX_LIST_ATTR_UNMARKED #define CAMEL_IMAPX_LIST_ATTR_NONEXISTENT #define CAMEL_IMAPX_LIST_ATTR_SUBSCRIBED #define CAMEL_IMAPX_LIST_ATTR_REMOTE #define CAMEL_IMAPX_LIST_ATTR_HASCHILDREN #define CAMEL_IMAPX_LIST_ATTR_HASNOCHILDREN void camel_imapx_list_response_add_attribute (CamelIMAPXListResponse *response,const gchar *attribute); gboolean camel_imapx_list_response_has_attribute (CamelIMAPXListResponse *response,const gchar *attribute); GHashTable * camel_imapx_list_response_dup_attributes (CamelIMAPXListResponse *response); GVariant * camel_imapx_list_response_ref_extended_item (CamelIMAPXListResponse *response,const gchar *extended_item_tag); CamelStoreInfoFlags camel_imapx_list_response_get_summary_flags (CamelIMAPXListResponse *response);
CamelIMAPXListResponse encapsulates an IMAP LIST response, which consists of a set of mailbox attributes, a mailbox separator character, and the mailbox name. (Extended information for LIST responses, as described in RFC 5258, to be supported at a later date.)
CamelIMAPXListResponse can also convert the mailbox attributes to
a CamelStoreInfoFlags / CamelFolderInfoFlags value for use with
camel_store_get_folder_info().
struct CamelIMAPXListResponse;
Contains only private data that should be read and manipulated using the functions below.
Since 3.10
CamelIMAPXListResponse * camel_imapx_list_response_new (CamelIMAPXStream *stream,GCancellable *cancellable,GError **error);
Attempts to parse an IMAP LIST response from stream and, if successful,
stores the response data in a new CamelIMAPXListResponse. If an error
occurs, the function sets error and returns NULL.
|
a CamelIMAPXStream |
|
a GCancellable |
|
return location for a GError, or NULL
|
Returns : |
a CamelIMAPXListResponse, or NULL
|
Since 3.10
guint camel_imapx_list_response_hash (CamelIMAPXListResponse *response);
Generates a hash value for response based on the mailbox name. This
function is intended for easily hashing a CamelIMAPXListResponse to
add to a GHashTable or similar data structure.
|
a CamelIMAPXListResponse |
Returns : |
a hash value for response
|
Since 3.10
gboolean camel_imapx_list_response_equal (CamelIMAPXListResponse *response_a,CamelIMAPXListResponse *response_b);
Checks two CamelIMAPXListResponse instances for equality based on their mailbox names.
|
the first CamelIMAPXListResponse |
|
the second CamelIMAPXListResponse |
Returns : |
TRUE if response_a and response_b are equal |
Since 3.10
gint camel_imapx_list_response_compare (CamelIMAPXListResponse *response_a,CamelIMAPXListResponse *response_b);
Compares two CamelIMAPXListResponse instances by their mailbox names.
|
the first CamelIMAPXListResponse |
|
the second CamelIMAPXListResponse |
Returns : |
a negative value if response_a compares before response_b,
zero if they compare equal, or a positive value if response_a
compares after response_b
|
Since 3.10
const gchar * camel_imapx_list_response_get_mailbox_name
(CamelIMAPXListResponse *response);
Returns the mailbox name for response.
|
a CamelIMAPXListResponse |
Returns : |
the mailbox name |
Since 3.10
gchar camel_imapx_list_response_get_separator
(CamelIMAPXListResponse *response);
Returns the mailbox path separator character for response.
|
a CamelIMAPXListResponse |
Returns : |
the mailbox path separator character |
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_NOINFERIORS "\\NoInferiors"
Refer to RFC 3501 section 7.2.2.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_NOSELECT "\\NoSelect"
Refer to RFC 3501 section 7.2.2.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_MARKED "\\Marked"
Refer to RFC 3501 section 7.2.2.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_UNMARKED "\\Unmarked"
Refer to RFC 3501 section 7.2.2.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_NONEXISTENT "\\NonExistent"
Refer to RFC 5258 section 3.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_SUBSCRIBED "\\Subscribed"
Refer to RFC 5258 section 3.1.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_REMOTE "\\Remote"
Refer to RFC 5258 section 3.1.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_HASCHILDREN "\\HasChildren"
Refer to RFC 5258 section 4.
Since 3.10
#define CAMEL_IMAPX_LIST_ATTR_HASNOCHILDREN "\\HasNoChildren"
Refer to RFC 5258 section 4.
Since 3.10
void camel_imapx_list_response_add_attribute (CamelIMAPXListResponse *response,const gchar *attribute);
Adds a mailbox attribute to response. The attribute should be one of
the LIST attribute macros defined above.
|
a CamelIMAPXListResponse |
|
a mailbox attribute |
Since 3.10
gboolean camel_imapx_list_response_has_attribute (CamelIMAPXListResponse *response,const gchar *attribute);
Returns whether response includes the given mailbox attribute. The
attribute should be one of the LIST attribute macros defined above.
|
a CamelIMAPXListResponse |
|
a mailbox attribute |
Returns : |
TRUE if response has attribute, or else FALSE
|
Since 3.10
GHashTable * camel_imapx_list_response_dup_attributes
(CamelIMAPXListResponse *response);
Returns a GHashTable of mailbox attributes to be used as a set.
Use g_hash_table_contains() and g_hash_table_get_keys() to query
for and list all mailbox attributes, respectively.
The hash table keys are all internalized strings and must not be freed.
Free the returned GHashTable with g_hash_table_destroy() when finished
with it.
|
a CamelIMAPXListResponse |
Returns : |
a newly-created GHashTable |
Since 3.10
GVariant * camel_imapx_list_response_ref_extended_item (CamelIMAPXListResponse *response,const gchar *extended_item_tag);
Returns the extended item value for extended_item_tag as a GVariant.
The type of the GVariant depends on the extended item. If no value
for extended_item_tag exists, the function returns NULL.
The returned GVariant is referenced for thread-safety and should
be unreferenced with g_variant_unref() when finished with it.
|
a CamelIMAPXListResponse |
|
an extended item tag |
Returns : |
a GVariant, or NULL
|
Since 3.10
CamelStoreInfoFlags camel_imapx_list_response_get_summary_flags
(CamelIMAPXListResponse *response);
Converts the relevant mailbox attribute flags in response to a
CamelStoreInfoFlags value.
|
a CamelIMAPXListResponse |
Returns : |
a CamelStoreInfoFlags value |
Since 3.10